Updated error msg info to instruct users better as to how gcc can be set up with...
authorArmando Di Cianno <fafhrd@gentoo.org>
Sun, 5 Dec 2004 21:52:07 +0000 (21:52 +0000)
committerArmando Di Cianno <fafhrd@gentoo.org>
Sun, 5 Dec 2004 21:52:07 +0000 (21:52 +0000)
gnustep-base/gnustep-base/ChangeLog
gnustep-base/gnustep-base/Manifest
gnustep-base/gnustep-base/files/tryffi.c [new file with mode: 0644]
gnustep-base/gnustep-base/gnustep-base-1.10.2_pre20041203.ebuild

index aab4c525446c2aeb85a552855a26aa03c421bdf3..afe9451b0638815779012aa75055b7cb2525fc35 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for gnustep-base/gnustep-base
 # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-base/ChangeLog,v 1.15 2004/12/04 20:18:23 fafhrd Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-base/ChangeLog,v 1.16 2004/12/05 21:52:07 fafhrd Exp $
+
+  05 Dec 2004; Armando Di Cianno <fafhrd@gentoo.org> +files/tryffi.c,
+  gnustep-base-1.10.2_pre20041203.ebuild:
+  Added a test where if gcc-libffi is USE flag on, then a test program is
+  compiled and linked, verifying the use of libffi
 
 *gnustep-base-1.10.2_pre20041203 (03 Dec 2004)
 
index 5546c3a2c86bbb17f169578f4579e975ed0f58fe..d5b274262f2e77ad5ae745748e48bd45634fb1b2 100644 (file)
@@ -1,16 +1,17 @@
 MD5 0ed4adc84367642a60e7813301bf3cd9 gnustep-base-1.10.0.ebuild 2182
 MD5 7da856ebeafe13f9ad2ee0d06e5a9c08 gnustep-base-1.10.1-r1.ebuild 2646
 MD5 38f82f2b0548aee169bd441883e12cb6 gnustep-base-1.10.1_pre20040928.ebuild 2452
-MD5 50a1b84375af10d285ed973c81e5c335 gnustep-base-1.10.2_pre20041203.ebuild 3145
+MD5 98e377542e7bd7dc34c636edf0014939 gnustep-base-1.10.2_pre20041203.ebuild 4139
 MD5 0ba89760f3342015b2b6bb4b71c17816 gnustep-base-1.10.2_pre20041116.ebuild 2913
 MD5 1ce84a41b6dd184226328e37935d2d74 gnustep-base-1.10.1.ebuild 2212
-MD5 22674479a423ba7102ff22357f2f7637 ChangeLog 6187
+MD5 3a3b37f7211f1378828ba134f12a5eb2 ChangeLog 6425
 MD5 6054f8e4a94313852ff8e1294c8abd88 metadata.xml 670
 MD5 deded00aa5a335854582a82255ddc2f3 files/digest-gnustep-base-1.10.1-r1 72
 MD5 efda24cf74398ac3ddce6cba6071561a files/config-gnustep-base.sh 559
 MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gnustep-base-1.10.1_pre20040928 0
 MD5 da38d67a86d0553b73378aea856093f5 files/digest-gnustep-base-1.10.0 72
 MD5 deded00aa5a335854582a82255ddc2f3 files/digest-gnustep-base-1.10.1 72
+MD5 e293bf6e39517a94d1c5221fd9bfb147 files/tryffi.c 96
 MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gnustep-base-1.10.2_pre20041116 0
 MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-gnustep-base-1.10.2_pre20041203 0
 MD5 1e1e21f737b0d25c8faabb89bd286988 files/base-user-defaults.patch-1.10.0 1069
diff --git a/gnustep-base/gnustep-base/files/tryffi.c b/gnustep-base/gnustep-base/files/tryffi.c
new file mode 100644 (file)
index 0000000..5f84c87
--- /dev/null
@@ -0,0 +1,11 @@
+//////
+// gcc -o tryffi tryffi.c -lffi
+//////
+
+#include <ffi.h>
+
+int main(void)
+{
+       return 0;
+}
+
index aac6eee8ffda6c755d7e431ec8fbf5fadf854a15..5630ca581acff0008b6a102de4e8ecf33ce941f9 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2004 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-base/gnustep-base-1.10.2_pre20041203.ebuild,v 1.1 2004/12/04 20:18:23 fafhrd Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnustep-base/gnustep-base/gnustep-base-1.10.2_pre20041203.ebuild,v 1.2 2004/12/05 21:52:07 fafhrd Exp $
 
 ECVS_CVS_COMMAND="cvs -q"
 ECVS_SERVER="savannah.gnu.org:/cvsroot/gnustep"
@@ -10,7 +10,7 @@ ECVS_MODULE="gnustep/core/base"
 ECVS_CO_OPTS="-P -D ${PV/*_pre}"
 ECVS_UP_OPTS="-dP -D ${PV/*_pre}"
 ECVS_TOP_DIR="${DISTDIR}/cvs-src/savannah.gnu.org-gnustep"
-inherit gnustep cvs
+inherit gnustep toolchain-funcs cvs
 
 S=${WORKDIR}/${ECVS_MODULE}
 
@@ -29,7 +29,7 @@ DEPEND="${GNUSTEP_CORE_DEPEND}
        >=dev-libs/libxslt-1.1*
        >=dev-libs/gmp-4.1*
        >=dev-libs/openssl-0.9.7*
-       || ( gcc-libffi? >=sys-devel/gcc-3.4.3-r1
+       || ( gcc-libffi? >=sys-devel/gcc-3.3*
                >=dev-libs/libffi-3* )
        >=sys-libs/zlib-1.2*
        ${DOC_DEPEND}"
@@ -38,6 +38,15 @@ RDEPEND="${DEPEND}
 
 egnustep_install_domain "System"
 
+pkg_setup() {
+       gnustep_pkg_setup
+
+       if use gcc-libffi; then
+                       eval $(tc-getCC) -lffi ${FILESDIR}/tryffi.c -o ${TMP}/tryffi \
+                               || die "Your FFI libraries and headers seem to be installed incorrectly -- this is not as bad as it sounds -- not many projects use libffi at the moment, and gcc may have installed the headers in an inavailable place.  Especially check for 'ffi.h' in your /usr/lib/gcc/\$CHOST/'gcc-version'/include directory, and that any other ffi related files it #include's (e.g. 'ffitarget.h') are in that directory as well; this can be solved by moving the files, or with a symlink.  This is a quick fix, and newer ebuilds of gcc should install the files in the correct places, but for now, it could save you a recompilation of gcc.  If this still fails for you, consider not using the 'gcc-libffi' USE flag and letting dev-libs/libffi build as a dependency.  It is important that either 'gcj' is a USE flag for gcc, or 'gcj' or 'objc' for >=gcc-3.4.3-r1."
+       fi
+}
+
 src_unpack() {
        cvs_src_unpack ${A}
        EPATCH_OPTS="-d ${S}" epatch ${FILESDIR}/base-user-defaults.patch-1.10.0