X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fsourcepackage.cpp;h=f51f4abbc5b48a12ad57dcb689ade1861c694999;hb=62853c9bb228cbb541304e866036cd931e3f5500;hp=bb9999476d0041f3529aacc44b7a3a60b3d8b960;hpb=ae1ab287b544cc19d185024fa64e475a957313e4;p=builder.git diff --git a/source/sourcepackage.cpp b/source/sourcepackage.cpp index bb99994..f51f4ab 100644 --- a/source/sourcepackage.cpp +++ b/source/sourcepackage.cpp @@ -9,6 +9,7 @@ #include "binarycomponent.h" #include "binarypackage.h" #include "builder.h" +#include "compilecommandsjson.h" #include "datapackcomponent.h" #include "file.h" #include "installcomponent.h" @@ -17,6 +18,7 @@ #include "sourcegenerator.h" #include "sourcepackage.h" #include "tool.h" +#include "vcxprojectfile.h" using namespace std; using namespace Msp; @@ -133,14 +135,25 @@ void SourcePackage::do_prepare() for(ComponentList::iterator i=components.begin(); i!=components.end(); ++i) (*i)->create_targets(); + const Architecture &arch = builder.get_native_arch(); if(!export_binfo.libs.empty()) { export_binfo.incpath.push_back((builder.get_prefix()/"include").str()); export_binfo.libpath.push_back((builder.get_prefix()/"lib").str()); - PkgConfigFile *pc = new PkgConfigFile(builder, *this); - builder.get_build_graph().get_target("install")->add_dependency(*builder.get_toolchain().get_tool("CP").create_target(*pc)); + if(arch.get_system()=="linux") + { + PkgConfigFile *pc = new PkgConfigFile(builder, *this); + builder.get_build_graph().get_target("install")->add_dependency(*builder.get_toolchain().get_tool("CP").create_target(*pc)); + } } + + export_binfo.standards = build_info.standards; + + if(arch.get_system()=="windows") + new VcxProjectFile(builder, *this); + + new CompileCommandsJson(builder, *this); } void SourcePackage::save_caches()