--- ./configs/freebsd-g++-shared.org Tue Nov 17 06:19:01 1998 +++ ./configs/freebsd-g++-shared Wed Jan 6 23:49:34 1999 @@ -40,15 +44,26 @@ # - Usually needs to incorporate $(VER_MAJ) and $(VER_MIN) # SYSCONF_LINK_SHLIB = g++ +ifeq ($(PORTOBJFORMAT),elf) +SYSCONF_LINK_TARGET_SHARED = lib$(TARGET).so.$(VER_MAJ) +SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) -shared \ + $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \ + -Wl,-soname,$(SYSCONF_LINK_TARGET_SHARED) \ + $(OBJECTS) $(OBJMOC) $(LIBS); \ + mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \ + cd $(DESTDIR); \ + rm -f lib$(TARGET).so; \ + ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so +else SYSCONF_LINK_TARGET_SHARED = lib$(TARGET).so.$(VER_MAJ).$(VER_MIN) SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) -shared \ $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \ $(OBJECTS) $(OBJMOC) $(LIBS); \ mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \ cd $(DESTDIR); \ - rm -f lib$(TARGET).so lib$(TARGET).so.$(VER_MAJ); \ - ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so; \ - ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so.$(VER_MAJ) + rm -f lib$(TARGET).so; \ + ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so +endif # Linking static libraries # - Build the $(TARGET) library, eg. lib$(TARGET).a @@ -61,9 +76,9 @@ # Compiling application source SYSCONF_CFLAGS = -pipe -O2 -fno-strength-reduce # Compiling library source -SYSCONF_CFLAGS_LIB = -O2 -fno-strength-reduce -fPIC +SYSCONF_CFLAGS_LIB = -pipe -O2 -fno-strength-reduce -fPIC # Compiling shared-object source -SYSCONF_CFLAGS_SHOBJ = -O2 -fno-strength-reduce -fPIC +SYSCONF_CFLAGS_SHOBJ = -pipe -O2 -fno-strength-reduce -fPIC # Default link type (stati linking is still be used where required) SYSCONF_LINK_LIB = $(SYSCONF_LINK_LIB_SHARED) SYSCONF_LINK_TARGET = $(SYSCONF_LINK_TARGET_SHARED)