--- Makefile.orig 2012-01-06 14:29:04.000000000 +0100 +++ Makefile 2013-09-05 14:35:52.000000000 +0200 @@ -7,7 +7,7 @@ ####################################################################### # Path to coin-osi header files - OSI_INCLUDE=/usr/include/coin + OSI_INCLUDE=%%LOCALBASE%%/include/coin # Path to solver include directories - leave empty if the solver # is not installed CLP_PATH=$(OSI_INCLUDE) @@ -40,7 +40,7 @@ ####################################################################### # gcc -CCC = g++-4.4 +CCC = %%CXX%% # add files to an archive ARCHIVE = ar rc @@ -48,10 +48,10 @@ # PRE_ARCHIVE is used to instantiate required templates (SGI) PRE_ARCHIVE = true -STRIP = strip -x +STRIP = true AWK = awk -PERL = /usr/bin/perl +PERL = %%PERL5%% # Gnu cp GCP = /bin/cp @@ -141,7 +141,8 @@ DEPEND = $(OBJDIR)/Makefile.dep CCFLAGS = $(ABACUS_INCLUDE) $(CCFLAG_SYS) $(CCFLAG_COMPILER) \ - $(CCFLAG_TEMPLATE) $(CCFLAG_PARALLEL) $(CCFLAG_DEBOPT) + $(CCFLAG_TEMPLATE) $(CCFLAG_PARALLEL) $(CCFLAG_DEBOPT) \ + -fPIC ####################################################################### # @@ -523,15 +524,20 @@ $(ARCHIVE) $@ $(OSI_O) # The basic ABACUS library -abacus-base: $(LIBDIR)/stuff/abacus-base.a +abacus-base-static: $(LIBDIR)/stuff/abacus-base.a +abacus-base-shared: $(LIBDIR)/stuff/abacus-base.so $(LIBDIR)/stuff/abacus-base.a: $(ABACUS_O) rm -f $@ @$(PRE_ARCHIVE) $(ABACUS_O) $(ARCHIVE) $@ $(ABACUS_O) +$(LIBDIR)/stuff/abacus-base.so: $(ABACUS_O) + rm -f $@ + $(CXX) -shared -o $@ $(ABACUS_O) + # Build the library distribution directory (lib and lib/stuff) -lib-all: subdirs abacus-base lpif interface $(ADDITIONAL_LIB_ALL) +lib-all: subdirs abacus-base-static abacus-base-shared lpif interface $(ADDITIONAL_LIB_ALL) # Create a tar file containing all necessary stuff to compile ABACUS on # a remote system. @@ -571,6 +577,7 @@ abacus: lib-all cp $(LIBDIR)/stuff/abacus-base.a $(LIBDIR)/libabacus-osi.a + cp $(LIBDIR)/stuff/abacus-base.so $(LIBDIR)/libabacus-osi.so mkdir $(LIBDIR)/temp cd $(LIBDIR)/temp; ar x ../stuff/interface-osi.a find $(LIBDIR)/temp -name \*.o | xargs -n1 ar r $(LIBDIR)/libabacus-osi.a