diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2025-05-26 19:13:33 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska@appnovation.com> | 2025-05-26 19:13:33 +0000 |
| commit | 5c03b2a15a576a28eef98175a841c8bcc07b1195 (patch) | |
| tree | 8b4d3bc0663b8904661e6fea0b887fe0b2d7e5d7 /tools | |
| parent | 7321f6352cf778195778e2f76eac0b435c9f52e2 (diff) | |
| download | s6-networking-5c03b2a15a576a28eef98175a841c8bcc07b1195.tar.gz | |
Support shlibs on MacOS
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/configure.template | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/tools/configure.template b/tools/configure.template index c0e2945..db8f59a 100755 --- a/tools/configure.template +++ b/tools/configure.template @@ -147,6 +147,7 @@ pkgconfdir='$prefix/lib/pkgconfig' shebangdir='$bindir' sysdeps='$prefix/lib/skalibs/sysdeps' manualsysdeps=false +shlibext=so shared=false static=true allpic=true @@ -192,9 +193,9 @@ for arg ; do --disable-shared|--enable-shared=no) shared=false ;; --enable-static|--enable-static=yes) static=true ;; --disable-static|--enable-static=no) static=false ;; - --enable-allstatic|--enable-allstatic=yes) allstatic=true ;; - --disable-allstatic|--enable-allstatic=no) allstatic=false ; evenmorestatic=false ;; - --enable-static-libc|--enable-static-libc=yes) allstatic=true ; evenmorestatic=true ;; + --enable-allstatic|--enable-allstatic=yes) static=true ; allstatic=true ;; + --disable-allstatic|--enable-allstatic=no) allstatic=false ; evenmorestatic=false ; shared=true ;; + --enable-static-libc|--enable-static-libc=yes) static=true ; allstatic=true ; evenmorestatic=true ;; --disable-static-libc|--enable-static-libc=no) evenmorestatic=false ;; --enable-all-pic|--enable-all-pic=yes) allpic=true ;; --disable-all-pic|--enable-all-pic=no) allpic=false ;; @@ -373,11 +374,18 @@ if test ! -d $sysdeps || test ! -f $sysdeps/target ; then echo "$0: error: $sysdeps is not a valid sysdeps directory" exit 1 fi -if [ "x$target" != "x$(cat $sysdeps/target)" ] ; then +if test "$target" != "$(cat $sysdeps/target)" ; then echo "$0: error: target $target does not match the contents of $sysdeps/target" exit 1 fi +echo "Shared libraries will be named ..." +libc="${target##*-}" +if test "${libc##darwin}" != "$libc" ; then + shlibext=dylib +fi +echo " ... *.$shlibext" + if $allpic ; then tryflag CPPFLAGS_AUTO -fPIC fi @@ -467,16 +475,17 @@ LDFLAGS := ${LDFLAGS}${LDFLAGS_POST:+ }$LDFLAGS_POST LDFLAGS_SHARED := $LDFLAGS_SHARED LDFLAGS_NOSHARED :=$LDFLAGS_NOSHARED CROSS_COMPILE := $cross +SHLIB_EXT := ${shlibext} vpath lib%.a$vpaths -vpath lib%.so$vpathd +vpath lib%.${shlibext}$vpathd EOF if $allstatic ; then echo ".LIBPATTERNS := lib%.a" echo "DO_ALLSTATIC := 1" else - echo ".LIBPATTERNS := lib%.so" + echo ".LIBPATTERNS := lib%.${shlibext}" echo "DO_ALLSTATIC :=" fi if $static ; then |
