Merge pull request #41254 from smaret/cfitsio

cfitsio: add Darwin support
This commit is contained in:
Daiderd Jordan 2018-06-01 23:33:54 +02:00 committed by GitHub
commit e126a8c8a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 50 additions and 2 deletions

View File

@ -0,0 +1,25 @@
diff -ruN cfitsio/configure cfitsio-curl-config/configure
--- cfitsio/configure 2018-05-09 21:16:00.000000000 +0200
+++ cfitsio-curl-config/configure 2018-05-30 13:28:58.000000000 +0200
@@ -4783,13 +4783,6 @@
CURL_LIB=""
CURL_INC=""
# Use curl-config to get compiler & linker flags, if available.
-# On Macs, prefer XCode curl-config, and reject MacPorts version
-# until further notice to prevent build errors:
-if test "x$EXT" = xdarwin -a -x /usr/bin/curl-config; then
- CURLCONFIG="/usr/bin/curl-config"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for curl-config... choosing /usr/bin/curl-config on Mac" >&5
-$as_echo "checking for curl-config... choosing /usr/bin/curl-config on Mac" >&6; }
-else
# Extract the first word of "curl-config", so it can be a program name with args.
set dummy curl-config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -4833,7 +4826,6 @@
fi
fi
fi
-fi
CURLCONFIG=$ac_cv_prog_CURLCONFIG
if test -n "$CURLCONFIG"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CURLCONFIG" >&5

View File

@ -0,0 +1,21 @@
diff -ruN cfitsio/configure cfitsio-rpath-universal/configure
--- cfitsio/configure 2018-05-09 21:16:00.000000000 +0200
+++ cfitsio-rpath-universal/configure 2018-05-31 12:02:25.000000000 +0200
@@ -4727,16 +4727,7 @@
SHLIB_SUFFIX=".dylib"
CFITSIO_SHLIB="lib\${PACKAGE}.\${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}\${SHLIB_SUFFIX}"
CFITSIO_SHLIB_SONAME="lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX}"
- case $host in
- *darwin[56789]*)
- SHLIB_LD="$CC -dynamiclib -install_name lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX} -compatibility_version \${CFITSIO_SONAME} -current_version \${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}"
- ;;
- *)
- # Build 'Universal' binaries (i386 & x86_64 architectures) and
- # use rpath token on Darwin 10.x or newer:
- SHLIB_LD="$CC -dynamiclib $C_UNIV_SWITCH -headerpad_max_install_names -install_name @rpath/lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX} -compatibility_version \${CFITSIO_SONAME} -current_version \${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}"
- ;;
- esac
+ SHLIB_LD="$CC -dynamiclib -install_name ${out}/lib/lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX} -compatibility_version \${CFITSIO_SONAME} -current_version \${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}"
lhea_shlib_cflags="-fPIC -fno-common"
;;

View File

@ -8,9 +8,11 @@
sha256 = "07fghxh5fl8nqk3q0dh8rvc83npnm0hisxzcj16a6r7gj5pmp40l"; sha256 = "07fghxh5fl8nqk3q0dh8rvc83npnm0hisxzcj16a6r7gj5pmp40l";
}; };
patches = [ ./darwin-curl-config.patch ./darwin-rpath-universal.patch ];
# Shared-only build # Shared-only build
buildFlags = "shared"; buildFlags = "shared";
patchPhase = '' sed -e '/^install:/s/libcfitsio.a //' -e 's@/bin/@@g' -i Makefile.in postPatch = '' sed -e '/^install:/s/libcfitsio.a //' -e 's@/bin/@@g' -i Makefile.in
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
@ -27,6 +29,6 @@
''; '';
# Permissive BSD-style license. # Permissive BSD-style license.
license = "permissive"; license = "permissive";
platforms = platforms.linux; platforms = with platforms; linux ++ darwin;
}; };
} }