Author: jgg
Date: 1999-12-10 06:39:46 GMT
Shared libaries only for linux
ifeq ($(words $(wildcard *)),0)
error-all/environment.mak:
echo You have a broken version of GNU Make - upgrade.
ifeq ($(words $(wildcard *)),0)
error-all/environment.mak:
echo You have a broken version of GNU Make - upgrade.
else
error-all/environment.mak:
echo Can't find the build directory in $(BUILD_POSSIBLE) -- use BUILD=
else
error-all/environment.mak:
echo Can't find the build directory in $(BUILD_POSSIBLE) -- use BUILD=
endif
# Force include below to come to the error target
endif
# Force include below to come to the error target
ifeq ($(NUM_PROCS),1)
PARALLEL_RUN=no
endif
ifeq ($(NUM_PROCS),1)
PARALLEL_RUN=no
endif
ifndef PARALLEL_RUN
PARALLEL_RUN=yes
.EXPORT: PARALLEL_RUN
ifndef PARALLEL_RUN
PARALLEL_RUN=yes
.EXPORT: PARALLEL_RUN
MAKEFLAGS += -j $(NUM_PROCS)
endif
endif
MAKEFLAGS += -j $(NUM_PROCS)
endif
endif
# Shim Headerfile control
HAVE_C9X = @HAVE_C9X@
HAVE_STATVFS = @HAVE_STATVFS@
# Shim Headerfile control
HAVE_C9X = @HAVE_C9X@
HAVE_STATVFS = @HAVE_STATVFS@
+
+# Shared library things
+HOST_OS = @host_os@
+ifeq ($(HOST_OS),linux-gnu)
+ ONLYSHAREDLIBS = yes
+ SONAME_MAGIC=-Wl,-soname -Wl,
+ LFLAGS_SO=
+endif
+
$(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR): $($(LOCAL)-HEADERS) $($(LOCAL)-OBJS)
-rm -f $(LIB)/lib$($(@F)-LIBRARY).so* 2> /dev/null
echo Building shared library $@
$(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR): $($(LOCAL)-HEADERS) $($(LOCAL)-OBJS)
-rm -f $(LIB)/lib$($(@F)-LIBRARY).so* 2> /dev/null
echo Building shared library $@
- $(CXX) $(CXXFLAGS) $(LDFLAGS) $(PICFLAGS) $(LFLAGS) -o $@ \
- -Wl,-soname -Wl,$($(@F)-SONAME) -shared $(filter %.opic,$^) \
- $($(@F)-SLIBS)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(PICFLAGS) $(LFLAGS) $(LFLAGS_SO)\
+ -o $@ $(SONAME_MAGIC)$($(@F)-SONAME) -shared \
+ $(filter %.opic,$^) \
+ $($(@F)-SLIBS)
# Compilation rules
vpath %.cc $(SUBDIRS)
# Compilation rules
vpath %.cc $(SUBDIRS)