diff --git a/scripts/packageBinaries.pl b/scripts/packageBinaries.pl index 025ba81c7260f10e88f9959776241700590fb39d..5679a5b887da74299c6aff71039d5156f1db1068 100644 --- a/scripts/packageBinaries.pl +++ b/scripts/packageBinaries.pl @@ -1262,10 +1262,10 @@ if ( ($platform =~ m/AIX/i) || ($platform =~ m/HP-UX/i) || ($platform =~ m/BeO } # Mac OS X - if ((-e "$XERCESCROOT/lib/libxerces-c.dylib.22.0" )) { - psystem("cp -f $XERCESCROOT/lib/libxerces-c.dylib.22.0 ."); - psystem("ln -s libxerces-c.dylib.22.0 libxerces-c.dylib.22 "); - psystem("ln -s libxerces-c.dylib.22 libxerces-c.dylib "); + if ((-e "$XERCESCROOT/lib/libxerces-c.22.0.dylib" )) { + psystem("cp -f $XERCESCROOT/lib/libxerces-c.22.0.dylib ."); + psystem("ln -s libxerces-c.22.0.dylib libxerces-c.22.dylib "); + psystem("ln -s libxerces-c.22.dylib libxerces-c.dylib "); } # Populate the Message Catalog Files diff --git a/src/xercesc/Makefile.incl b/src/xercesc/Makefile.incl index 8a6b708c6ec5e5ae5a4f9f8dfa1a9b3ddb6f3642..89ff8bc3d8bcaa7fe728ce47a8373f64f34d955e 100644 --- a/src/xercesc/Makefile.incl +++ b/src/xercesc/Makefile.incl @@ -514,6 +514,7 @@ ifeq (${PLATFORM}, MACOSX) ALLLIBS = ${LIBS} -L/usr/lib endif SHLIBSUFFIX=.dylib + LD_SONAME = -install_name ${SO_NAME} endif #=============== CygWin SPECIFIC OPTIONS ========================= @@ -545,48 +546,56 @@ endif # # ifeq (${PLATFORM}, AIX) - # # LINK_NAME=libxerces-c.so # SO_NAME =libxerces-c20.so # REAL_NAME=libxerces-c20.0.so # - LINK_NAME=${LIBNAME}${SHLIBSUFFIX} SO_NAME =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX} REAL_NAME=${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX} +endif +ifeq (${PLATFORM}, OS390) + # + # LINK_NAME=libxerces-c.dll + # SO_NAME =libxerces-c20.dll + # REAL_NAME=libxerces-c2_0_0.dll + # + LINK_NAME=${LIBNAME}${SHLIBSUFFIX} + SO_NAME =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX} + REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX} +endif +ifeq (${PLATFORM}, CYGWIN) + # + # LINK_NAME=libxerces-c.dll + # SO_NAME =cygxerces-c20.dll + # REAL_NAME=libxerces-c2_0_0.dll + # + LINK_NAME=${LIBNAME}${SHLIBSUFFIX} + SO_NAME =${CYGNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX} + REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX} +endif +ifeq (${PLATFORM}, MACOSX) + # + # LINK_NAME=libxerces-c.{suffix} + # SO_NAME =libxerces-c.20.{suffix} + # REAL_NAME=libxerces-c.20.0.{suffix} + # + LINK_NAME=${LIBNAME}${SHLIBSUFFIX} + SO_NAME =${LIBNAME}.${SO_TARGET_VERSION}${SHLIBSUFFIX} + REAL_NAME=${LIBNAME}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX} +endif -else - ifeq (${PLATFORM}, OS390) - # - # LINK_NAME=libxerces-c.dll - # SO_NAME =libxerces-c20.dll - # REAL_NAME=libxerces-c2_0_0.dll - # - LINK_NAME=${LIBNAME}${SHLIBSUFFIX} - SO_NAME =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX} - REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX} - else - ifeq (${PLATFORM}, CYGWIN) - # - # LINK_NAME=libxerces-c.dll - # SO_NAME =cygxerces-c20.dll - # REAL_NAME=libxerces-c2_0_0.dll - # - LINK_NAME=${LIBNAME}${SHLIBSUFFIX} - SO_NAME =${CYGNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX} - REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX} - else - # - # LINK_NAME=libxerces-c.so - # SO_NAME =libxerces-c.so.20 - # REAL_NAME=libxerces-c.so.20.0 - # - LINK_NAME=${LIBNAME}${SHLIBSUFFIX} - SO_NAME =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION} - REAL_NAME=${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR} - endif - endif +# Default naming (if no special cases above) +ifeq ($(SO_NAME),) + # + # LINK_NAME=libxerces-c.so + # SO_NAME =libxerces-c.so.20 + # REAL_NAME=libxerces-c.so.20.0 + # + LINK_NAME=${LIBNAME}${SHLIBSUFFIX} + SO_NAME =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION} + REAL_NAME=${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR} endif @@ -594,6 +603,7 @@ FQ_LINK_NAME=${XML_LIB_DIR}/${LINK_NAME} FQ_SO_NAME =${XML_LIB_DIR}/${SO_NAME} FQ_REAL_NAME=${XML_LIB_DIR}/${REAL_NAME} + ###################### STANDARD TOOLS ############################# ifeq (${PLATFORM}, OS400) CP = -cp -fph