* Darwin compatibility fix, and modernise the ancient builder.

svn path=/nixpkgs/trunk/; revision=3332
This commit is contained in:
Eelco Dolstra 2005-07-13 11:22:38 +00:00
parent 6f8e9bc2f6
commit 89686a2252
3 changed files with 44 additions and 12 deletions

View File

@ -1,14 +1,12 @@
. $stdenv/setup || exit 1
export PATH=$perl/bin:$PATH
. $stdenv/setup
tar xvfz $src || exit 1
cd openssl-* || exit 1
./config --prefix=$out shared || exit 1
make || exit 1
mkdir $out || exit 1
make install || exit 1
configureScript=./config
configureFlags=shared
# Bug fix: openssl does a `chmod 644' on the pkgconfig directory.
chmod 755 $out/lib/pkgconfig || exit 1
postInstall=postInstall
postInstall() {
# Bug fix: openssl does a `chmod 644' on the pkgconfig directory.
chmod 755 $out/lib/pkgconfig || exit 1
}
echo $envpkgs > $out/envpkgs || exit 1
genericBuild

View File

@ -5,5 +5,9 @@
url = http://www.openssl.org/source/openssl-0.9.8.tar.gz;
md5 = "9da21071596a124acde6080552deac16";
};
inherit perl;
buildInputs = [perl];
# Quick fix for a Makefile bug in openssl-0.9.8 (`make install'
# tries to copy .so files, instead of .dylib files).
patches = if stdenv.system == "powerpc-darwin" then [./dylib.patch] else [];
}

View File

@ -0,0 +1,30 @@
diff -rc openssl-0.9.8-orig/engines/Makefile openssl-0.9.8/engines/Makefile
*** openssl-0.9.8-orig/engines/Makefile 2005-06-28 11:10:18.000000000 +0200
--- openssl-0.9.8/engines/Makefile 2005-07-13 13:19:09.000000000 +0200
***************
*** 91,102 ****
for l in $(LIBNAMES); do \
( echo installing $$l; \
if [ "$(PLATFORM)" != "Cygwin" ]; then \
! cp lib$$l.so $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.so.new; \
else \
! cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.so.new; \
fi; \
! chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.so.new; \
! mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.so.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.so ); \
done; \
fi
--- 91,102 ----
for l in $(LIBNAMES); do \
( echo installing $$l; \
if [ "$(PLATFORM)" != "Cygwin" ]; then \
! cp lib$$l.dylib $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.dylib.new; \
else \
! cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.dylib.new; \
fi; \
! chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.dylib.new; \
! mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.dylib.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.dylib ); \
done; \
fi