Tue, 28 Oct 2025 21:46:37 +0100
add support for multiple parallel versions of ucx
| configure | file | annotate | diff | comparison | revisions | |
| make/project.xml | file | annotate | diff | comparison | revisions |
--- a/configure Tue Oct 28 21:33:24 2025 +0100 +++ b/configure Tue Oct 28 21:46:37 2025 +0100 @@ -407,100 +407,6 @@ dep_checked_cxx=1 return 0 } -dependency_error_c() -{ - print_check_msg "$dep_checked_c" "checking for c... " - # dependency c platform="mingw" - while true - do - if notisplatform "mingw"; then - break - fi - if [ -z "$lang_c" ] ; then - break - fi - cat >> $TEMP_DIR/make.mk << __EOF__ -# Dependency: c -AR=ar -ARFLAGS=r -STLIB_EXT=.lib -SHLIB_EXT=.dll -__EOF__ - print_check_msg "$dep_checked_c" "yes\n" - dep_checked_c=1 - return 1 - done - - # dependency c platform="macos" - while true - do - if notisplatform "macos"; then - break - fi - if [ -z "$lang_c" ] ; then - break - fi - cat >> $TEMP_DIR/make.mk << __EOF__ -# Dependency: c -AR=ar -ARFLAGS=r -STLIB_EXT=.a -SHLIB_EXT=.dylib -__EOF__ - print_check_msg "$dep_checked_c" "yes\n" - dep_checked_c=1 - return 1 - done - - # dependency c platform="unix" - while true - do - if notisplatform "unix"; then - break - fi - if [ -z "$lang_c" ] ; then - break - fi - cat >> $TEMP_DIR/make.mk << __EOF__ -# Dependency: c -AR=ar -ARFLAGS=cr -STLIB_EXT=.a -SHLIB_EXT=.so -__EOF__ - print_check_msg "$dep_checked_c" "yes\n" - dep_checked_c=1 - return 1 - done - - print_check_msg "$dep_checked_c" "no\n" - dep_checked_c=1 - return 0 -} -dependency_error_file_tools() -{ - print_check_msg "$dep_checked_file_tools" "checking for file_tools... " - # dependency file-tools - while true - do - cat >> $TEMP_DIR/make.mk << __EOF__ -# Dependency: file_tools -MKDIR=/bin/mkdir -p -RMFILE=/bin/rm -f -RMDIR=/bin/rm -f -R -COPYFILE=/bin/cp -f -COPYALL=/bin/cp -f -R -SYMLINK=/bin/ln -s -__EOF__ - print_check_msg "$dep_checked_file_tools" "yes\n" - dep_checked_file_tools=1 - return 1 - done - - print_check_msg "$dep_checked_file_tools" "no\n" - dep_checked_file_tools=1 - return 0 -} dependency_error_memrchr() { print_check_msg "$dep_checked_memrchr" "checking for memrchr... " @@ -613,6 +519,122 @@ done while true do + while true + do + + cat >> "$TEMP_DIR/make.mk" << __EOF__ +MKDIR=/bin/mkdir -p +RMFILE=/bin/rm -f +RMDIR=/bin/rm -f -R +COPYFILE=/bin/cp -f +COPYALL=/bin/cp -f -R +SYMLINK=/bin/ln -s +__EOF__ + break + done + break +done +while true +do + if notisplatform "mingw"; then + break + fi + while true + do + if [ -z "$lang_c" ] ; then + ERROR=1 + break + fi + + cat >> "$TEMP_DIR/make.mk" << __EOF__ +AR=ar +ARFLAGS=r +STLIB_EXT=.lib +SHLIB_EXT=.dll +__EOF__ + break + done + break +done +while true +do + if notisplatform "macos"; then + break + fi + while true + do + if [ -z "$lang_c" ] ; then + ERROR=1 + break + fi + + cat >> "$TEMP_DIR/make.mk" << __EOF__ +AR=ar +ARFLAGS=r +STLIB_EXT=.a +SHLIB_EXT=.dylib +__EOF__ + break + done + break +done +while true +do + if notisplatform "unix"; then + break + fi + while true + do + if [ -z "$lang_c" ] ; then + ERROR=1 + break + fi + + cat >> "$TEMP_DIR/make.mk" << __EOF__ +AR=ar +ARFLAGS=cr +STLIB_EXT=.a +SHLIB_EXT=.so +__EOF__ + break + done + break +done +while true +do + if notistoolchain "gnuc"; then + break + fi + if isplatform "macos" || istoolchain "macos"; then + break + fi + while true + do + + cat >> "$TEMP_DIR/make.mk" << __EOF__ +SHLIB_LDFLAGS += -Wl,-soname,libucx\$(SHLIB_EXT).\$(LIBVERSION_MAJOR) +__EOF__ + break + done + break +done +while true +do + if notistoolchain "suncc"; then + break + fi + while true + do + + cat >> "$TEMP_DIR/make.mk" << __EOF__ +SHLIB_LDFLAGS += -h libucx\$(SHLIB_EXT).\$(LIBVERSION_MAJOR) +__EOF__ + break + done + break +done +while true +do if notisplatform "solaris"; then break fi @@ -662,14 +684,6 @@ TEMP_CXXFLAGS= TEMP_LDFLAGS= -if dependency_error_c; then - DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED c " - ERROR=1 -fi -if dependency_error_file_tools; then - DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED file_tools " - ERROR=1 -fi # Features if [ -n "$FEATURE_API_DOCS" ]; then
--- a/make/project.xml Tue Oct 28 21:33:24 2025 +0100 +++ b/make/project.xml Tue Oct 28 21:46:37 2025 +0100 @@ -20,11 +20,7 @@ </make> </dependency> - <dependency platform="solaris"> - <ldflags>-lm</ldflags> - </dependency> - - <dependency name="file-tools"> + <dependency> <make> MKDIR=/bin/mkdir -p RMFILE=/bin/rm -f @@ -35,7 +31,7 @@ </make> </dependency> - <dependency name="c" platform="mingw"> + <dependency platform="mingw"> <lang>c</lang> <make> AR=ar @@ -45,7 +41,7 @@ </make> </dependency> - <dependency name="c" platform="macos"> + <dependency platform="macos"> <lang>c</lang> <make> AR=ar @@ -55,7 +51,7 @@ </make> </dependency> - <dependency name="c" platform="unix"> + <dependency platform="unix"> <lang>c</lang> <make> AR=ar @@ -65,6 +61,22 @@ </make> </dependency> + <dependency toolchain="gnuc" not="macos"> + <make> + SHLIB_LDFLAGS += -Wl,-soname,libucx\$(SHLIB_EXT).\$(LIBVERSION_MAJOR) + </make> + </dependency> + + <dependency toolchain="suncc"> + <make> + SHLIB_LDFLAGS += -h libucx\$(SHLIB_EXT).\$(LIBVERSION_MAJOR) + </make> + </dependency> + + <dependency platform="solaris"> + <ldflags>-lm</ldflags> + </dependency> + <dependency name="cxx"> <lang>cpp</lang> </dependency> @@ -134,6 +146,5 @@ <define name="CX_NO_SZMUL_BUILTIN"/> </disabled> </feature> - <dependencies>c,file-tools</dependencies> </target> </project>