diff options
Diffstat (limited to 'project2/ice')
-rw-r--r-- | project2/ice/buildComms.cpp | 2 | ||||
-rw-r--r-- | project2/ice/iceBase.h | 3 | ||||
-rw-r--r-- | project2/ice/iceClient.h | 3 | ||||
-rw-r--r-- | project2/ice/iceCompile.cpp | 2 | ||||
-rw-r--r-- | project2/ice/iceConvert.h | 5 | ||||
-rw-r--r-- | project2/ice/iceDaemon.h | 3 | ||||
-rw-r--r-- | project2/ice/iceDataSource.h | 3 | ||||
-rw-r--r-- | project2/ice/iceModule.h | 3 | ||||
-rw-r--r-- | project2/ice/iceRows.h | 3 | ||||
-rw-r--r-- | project2/ice/iceboxDaemon.cpp | 1 | ||||
-rw-r--r-- | project2/ice/slice2Common.h | 3 | ||||
-rw-r--r-- | project2/ice/sliceCompile.h | 3 | ||||
-rw-r--r-- | project2/ice/unittests/conversions.cpp | 4 |
13 files changed, 26 insertions, 12 deletions
diff --git a/project2/ice/buildComms.cpp b/project2/ice/buildComms.cpp index 5bf80e7..49e58c8 100644 --- a/project2/ice/buildComms.cpp +++ b/project2/ice/buildComms.cpp @@ -33,7 +33,7 @@ BuildComms::Count(const boost::filesystem::path & in) const unsigned int BuildComms::Build(const boost::filesystem::path & in, const boost::filesystem::path & out) const { - const auto slicecmd = stringbf("%s --output-dir %s %s", slice2cpp, out.parent_path(), in); + const auto slicecmd = stringbf("%s --output-dir %s --dll-export JAM_DLL_PUBLIC %s", slice2cpp, out.parent_path(), in); Logger()->messagebf(LOG_DEBUG, "%s: slice command: %s", __PRETTY_FUNCTION__, slicecmd); if (system(slicecmd.c_str())) { throw std::runtime_error("slice2cpp failed"); diff --git a/project2/ice/iceBase.h b/project2/ice/iceBase.h index 0a59416..5547342 100644 --- a/project2/ice/iceBase.h +++ b/project2/ice/iceBase.h @@ -5,8 +5,9 @@ #include <thread> #include "iceCompile.h" #include <variableType.h> +#include <visibility.h> -class IceBase { +class DLL_PUBLIC IceBase { public: typedef boost::tuple<IceCompile::Ptr, std::thread *> LibCompile; typedef boost::variant<LibCompile, IceCompile::LibHandles> LibPromise; diff --git a/project2/ice/iceClient.h b/project2/ice/iceClient.h index 1d198f1..7d1d5e1 100644 --- a/project2/ice/iceClient.h +++ b/project2/ice/iceClient.h @@ -4,8 +4,9 @@ #include <variables.h> #include <commonObjects.h> #include "iceDataSource.h" +#include <visibility.h> -class IceClientBase { +class DLL_PUBLIC IceClientBase { public: IceClientBase(ScriptNodePtr p); diff --git a/project2/ice/iceCompile.cpp b/project2/ice/iceCompile.cpp index 9eb5cf5..3701c8f 100644 --- a/project2/ice/iceCompile.cpp +++ b/project2/ice/iceCompile.cpp @@ -102,7 +102,7 @@ IceCompile::Compile(const fs::path & in, const fs::path & out) if (components == 0) return; const auto compile = stringbf( - "%s %s -o %s -x c++ -c -I %s -I %s -I /usr/include/adhocutil -I %s -I %s -I %s `pkg-config --cflags glibmm-2.4` %s", + "%s %s -o %s -x c++ -c -fvisibility=hidden -I %s -I %s -I /usr/include/adhocutil -I %s -I %s -I %s `pkg-config --cflags glibmm-2.4` %s", cxx, cxxopts, out, tmpdir, slicerheaderdir, headerdir / "common", diff --git a/project2/ice/iceConvert.h b/project2/ice/iceConvert.h index 93e531c..38b07d9 100644 --- a/project2/ice/iceConvert.h +++ b/project2/ice/iceConvert.h @@ -4,16 +4,17 @@ #include <variableType.h> #include <IceUtil/Exception.h> #include <IceUtil/Optional.h> +#include <visibility.h> template <typename IceType> -class IceConvert { +class DLL_PUBLIC IceConvert { public: static IceType FromVariable(const VariableType &); static VariableType ToVariable(const IceType &); }; template <typename IceOptionalType> -class IceConvert<IceUtil::Optional<IceOptionalType>> { +class DLL_PUBLIC IceConvert<IceUtil::Optional<IceOptionalType>> { public: static IceUtil::Optional<IceOptionalType> FromVariable(const VariableType & v) { diff --git a/project2/ice/iceDaemon.h b/project2/ice/iceDaemon.h index 41343ec..e61a2b7 100644 --- a/project2/ice/iceDaemon.h +++ b/project2/ice/iceDaemon.h @@ -4,8 +4,9 @@ #include <daemon.h> #include "iceModule.h" #include "iceBase.h" +#include <visibility.h> -class IceDaemon : public Daemon, IceBase { +class DLL_PUBLIC IceDaemon : public Daemon, IceBase { public: IceDaemon(int & argc, char ** argv); virtual ~IceDaemon(); diff --git a/project2/ice/iceDataSource.h b/project2/ice/iceDataSource.h index 715f27b..a18efc6 100644 --- a/project2/ice/iceDataSource.h +++ b/project2/ice/iceDataSource.h @@ -6,8 +6,9 @@ #include <variables.h> #include <Ice/Communicator.h> #include "iceBase.h" +#include <visibility.h> -class IceDataSource : public DataSource, IceBase { +class DLL_PUBLIC IceDataSource : public DataSource, IceBase { public: INITOPTIONS; diff --git a/project2/ice/iceModule.h b/project2/ice/iceModule.h index 49aa63b..6e55e8a 100644 --- a/project2/ice/iceModule.h +++ b/project2/ice/iceModule.h @@ -10,11 +10,12 @@ #include <slicer/modelParts.h> #include "iceConvert.h" #include <factory.h> +#include <visibility.h> typedef std::map<std::string, VariableType> ParamMap; class IceDaemon; -class IceDaemonModule : virtual public ::Ice::Object { +class DLL_PUBLIC IceDaemonModule : virtual public ::Ice::Object { public: void add(Ice::ObjectAdapterPtr, Ice::CommunicatorPtr); void remove(Ice::ObjectAdapterPtr, Ice::CommunicatorPtr); diff --git a/project2/ice/iceRows.h b/project2/ice/iceRows.h index 3ac2019..dded0db 100644 --- a/project2/ice/iceRows.h +++ b/project2/ice/iceRows.h @@ -6,10 +6,11 @@ #include "iceClient.h" #include <slicer/modelParts.h> #include <slicer/serializer.h> +#include <visibility.h> class IceRowState; -class RowProcSerializer : public Slicer::Serializer { +class DLL_PUBLIC RowProcSerializer : public Slicer::Serializer { public: RowProcSerializer(ExecContext *, const RowProcessorCallback &); diff --git a/project2/ice/iceboxDaemon.cpp b/project2/ice/iceboxDaemon.cpp index 8aa3582..0e27303 100644 --- a/project2/ice/iceboxDaemon.cpp +++ b/project2/ice/iceboxDaemon.cpp @@ -66,6 +66,7 @@ DECLARE_OPTIONS(IceBoxDaemon, "Project2 IceBox options") END_OPTIONS(IceBoxDaemon); extern "C" { + DLL_PUBLIC IceBox::Service * createProject2Daemon(Ice::CommunicatorPtr ic) { diff --git a/project2/ice/slice2Common.h b/project2/ice/slice2Common.h index 8ea21d0..ec1b35c 100644 --- a/project2/ice/slice2Common.h +++ b/project2/ice/slice2Common.h @@ -2,8 +2,9 @@ #define SLICE2COMMON_H #include <Slice/Parser.h> +#include <visibility.h> -class Slice2Common : public Slice::ParserVisitor { +class DLL_PUBLIC Slice2Common : public Slice::ParserVisitor { public: Slice2Common(FILE * c); diff --git a/project2/ice/sliceCompile.h b/project2/ice/sliceCompile.h index d8e8e32..db4127b 100644 --- a/project2/ice/sliceCompile.h +++ b/project2/ice/sliceCompile.h @@ -5,8 +5,9 @@ #include <string> #include <Slice/Parser.h> #include <Slice/Preprocessor.h> +#include <visibility.h> -class SliceCompile : public IceCompile { +class DLL_PUBLIC SliceCompile : public IceCompile { public: SliceCompile(const boost::filesystem::path & slice, const IceCompile::Deps & dep); diff --git a/project2/ice/unittests/conversions.cpp b/project2/ice/unittests/conversions.cpp index e6be3f8..546e922 100644 --- a/project2/ice/unittests/conversions.cpp +++ b/project2/ice/unittests/conversions.cpp @@ -3,6 +3,7 @@ #include <logger.h> namespace Slicer { + DLL_PUBLIC boost::posix_time::ptime dateTimeToPTime(const UnitTestComplex::DatePtr & dt) { @@ -12,6 +13,7 @@ namespace Slicer { boost::posix_time::time_duration(dt->hours, dt->minutes, dt->seconds)); } + DLL_PUBLIC UnitTestComplex::DatePtr ptimeToDateTime(const boost::posix_time::ptime & pt) { @@ -27,6 +29,7 @@ namespace Slicer { } template<> +DLL_PUBLIC ::UnitTestComplex::DatePtr IceConvert< ::UnitTestComplex::DatePtr >::FromVariable(const VariableType & vt) { @@ -35,6 +38,7 @@ IceConvert< ::UnitTestComplex::DatePtr >::FromVariable(const VariableType & vt) } template<> +DLL_PUBLIC VariableType IceConvert< ::UnitTestComplex::DatePtr >::ToVariable(const ::UnitTestComplex::DatePtr & d) { |