+#include <msp/strconv.h>
#include <msp/strutils.h>
#include "builder.h"
#include "misc.h"
if(flags&LIB)
export_binfo.libpath.push_back((Path::Path(config.get_option("prefix").value)/"lib").str());
+ string optimize=config.get_option("optimize").value;
+ if(strtol(optimize))
+ {
+ build_info.cflags.push_back("-O"+optimize);
+ string cpu=config.get_option("cpu").value;
+ if(cpu!="auto")
+ build_info.cflags.push_back("-march="+cpu);
+ }
+
+ if(strtobool(config.get_option("debug").value))
+ build_info.cflags.push_back("-ggdb");
+
build_info.unique();
export_binfo.unique();
{
buildable=true;
- config.add_option("tempdir", "temp", "Directory for storing temporary files");
- config.add_option("optimize", "0", "Apply compiler optimizations");
- config.add_option("debug", "0", "Produce debugging symbols");
+ config.add_option("tempdir", "temp", "Directory for storing temporary files");
+ config.add_option("optimize", "0", "Apply compiler optimizations");
+ config.add_option("debug", "0", "Produce debugging symbols");
+ config.add_option("cpu", "auto", "CPU type to optimize for");
+ config.add_option("arch", "native", "Architecture for cross-compiling");
const char *home=getenv("HOME");
unsigned flags=get_install_flags();