]> git.tdb.fi Git - builder.git/blobdiff - plugins/base/baseplugin.cpp
Add visibility decorations to the library and plugins
[builder.git] / plugins / base / baseplugin.cpp
index 3646d10c780f7d770982fe79a1089ad768f7a92e..0da610ce8def2237e7e490730c8e8a683ea90bb8 100644 (file)
@@ -1,18 +1,16 @@
 #include <msp/builder/builder.h>
 #include <msp/builder/tool.h>
-#include "builtinplugin.h"
-#include "builtintools.h"
+#include "baseplugin.h"
+#include "basetools.h"
 #include "compilecommandsjson.h"
 #include "pkgconfigfile.h"
-#include "vcxprojectfile.h"
-#include "vssolutionfile.h"
 
-void BuiltinPlugin::add_tools(Toolchain &toolchain, const Architecture &) const
+void BasePlugin::add_tools(Toolchain &toolchain, const Architecture &) const
 {
-       toolchain.add_toolchain(new BuiltinTools(builder));
+       toolchain.add_toolchain(new BaseTools(builder));
 }
 
-void BuiltinPlugin::create_targets(SourcePackage &spkg) const
+void BasePlugin::create_targets(SourcePackage &spkg) const
 {
        const Architecture &native_arch = builder.get_native_arch();
 
@@ -22,18 +20,20 @@ void BuiltinPlugin::create_targets(SourcePackage &spkg) const
                builder.get_build_graph().get_target("install")->add_dependency(*builder.get_toolchain().get_tool("CP").create_target(*pc));
        }
 
-       if(native_arch.get_system()=="windows")
-       {
-               new VcxProjectFile(builder, spkg);
-               new VsSolutionFile(builder, spkg);
-       }
-
        new CompileCommandsJson(builder, spkg);
 }
 
 
+#if defined(_WIN32)
+#define BASETOOLS_API __declspec(dllexport)
+#elif defined(__GNUC__)
+#define BASETOOLS_API __attribute__((visibility("default")))
+#else
+#define BASETOOLS_API
+#endif
+
 extern "C"
-Plugin *create_plugin(Builder &builder)
+BASETOOLS_API Plugin *create_plugin(Builder &builder)
 {
-       return new BuiltinPlugin(builder);
+       return new BasePlugin(builder);
 }