Merge pull request #41254 from smaret/cfitsio

cfitsio: add Darwin support

Changed files
+50 -2
pkgs
+25
pkgs/development/libraries/cfitsio/darwin-curl-config.patch
···
+
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
+21
pkgs/development/libraries/cfitsio/darwin-rpath-universal.patch
···
+
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"
+
;;
+4 -2
pkgs/development/libraries/cfitsio/default.nix
···
sha256 = "07fghxh5fl8nqk3q0dh8rvc83npnm0hisxzcj16a6r7gj5pmp40l";
};
+
patches = [ ./darwin-curl-config.patch ./darwin-rpath-universal.patch ];
+
# Shared-only build
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; {
···
'';
# Permissive BSD-style license.
license = "permissive";
-
platforms = platforms.linux;
+
platforms = with platforms; linux ++ darwin;
};
}