python-numpy: add gross hack to make it build
authorKoen Kooi <koen@openembedded.org>
Mon, 1 Sep 2008 10:16:05 +0000 (10:16 +0000)
committerKoen Kooi <koen@openembedded.org>
Mon, 1 Sep 2008 10:16:05 +0000 (10:16 +0000)
packages/python/python-numpy/arm/.mtn2git_empty [new file with mode: 0644]
packages/python/python-numpy/arm/config.h [new file with mode: 0644]
packages/python/python-numpy/arm/numpyconfig.h [new file with mode: 0644]
packages/python/python-numpy/trycompile.diff [new file with mode: 0644]
packages/python/python-numpy_1.1.1.bb

diff --git a/packages/python/python-numpy/arm/.mtn2git_empty b/packages/python/python-numpy/arm/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/python/python-numpy/arm/config.h b/packages/python/python-numpy/arm/config.h
new file mode 100644 (file)
index 0000000..17ef186
--- /dev/null
@@ -0,0 +1,21 @@
+/* ./src.linux-i686-2.5/numpy/core/include/numpy/config.h */
+/* #define SIZEOF_SHORT 2 */
+/* #define SIZEOF_INT 4 */
+/* #define SIZEOF_LONG 4 */
+/* #define SIZEOF_FLOAT 4 */
+/* #define SIZEOF_DOUBLE 8 */
+#define SIZEOF_LONG_DOUBLE 12
+#define SIZEOF_PY_INTPTR_T 4
+/* #define SIZEOF_LONG_LONG 8 */
+#define SIZEOF_PY_LONG_LONG 8
+/* #define CHAR_BIT 8 */
+#define MATHLIB m
+#define HAVE_FLOAT_FUNCS
+#define HAVE_LOG1P
+#define HAVE_EXPM1
+#define HAVE_INVERSE_HYPERBOLIC
+#define HAVE_INVERSE_HYPERBOLIC_FLOAT
+#define HAVE_ISNAN
+#define HAVE_ISINF
+#define HAVE_RINT
+
diff --git a/packages/python/python-numpy/arm/numpyconfig.h b/packages/python/python-numpy/arm/numpyconfig.h
new file mode 100644 (file)
index 0000000..c4bf654
--- /dev/null
@@ -0,0 +1,17 @@
+/* cat ./src.linux-i686-2.5/numpy/core/include/numpy/numpyconfig.h */
+/*
+ *  * This file is generated by numpy/core/setup.pyc. DO NOT EDIT 
+ *   */
+#define NPY_SIZEOF_SHORT 2 
+#define NPY_SIZEOF_INT 4 
+#define NPY_SIZEOF_LONG 4 
+#define NPY_SIZEOF_FLOAT 4 
+#define NPY_SIZEOF_DOUBLE 8 
+#define NPY_SIZEOF_LONGDOUBLE 12 
+#define NPY_SIZEOF_PY_INTPTR_T 4 
+#define NPY_NO_SMP 0
+
+#define NPY_SIZEOF_LONGLONG 8 
+#define NPY_SIZEOF_PY_LONG_LONG 8 
+/* #define CHAR_BIT 8 */
+
diff --git a/packages/python/python-numpy/trycompile.diff b/packages/python/python-numpy/trycompile.diff
new file mode 100644 (file)
index 0000000..3ab3d72
--- /dev/null
@@ -0,0 +1,33 @@
+--- /tmp/setup.py      2008-09-01 10:37:44.000000000 +0200
++++ numpy-1.1.1/numpy/core/setup.py    2008-09-01 10:38:20.373198000 +0200
+@@ -80,8 +80,7 @@
+                 raise SystemError,\
+                       "Non-existing %s. Perhaps you need to install"\
+                       " python-dev|python-devel." % (python_h)
+-            result = config_cmd.try_run(tc,include_dirs=[python_include],
+-                                        library_dirs = default_lib_dirs)
++            result = config_cmd.try_compile(tc)
+             if not result:
+                 raise SystemError,"Failed to test configuration. "\
+                       "See previous error messages for more information."
+@@ -95,7 +94,7 @@
+             if mathlib:
+                 mathlibs_choices.insert(0,mathlib.split(','))
+             for libs in mathlibs_choices:
+-                if config_cmd.try_run(tc,libraries=libs):
++                if config_cmd.try_compile(tc):
+                     mathlibs = libs
+                     break
+             else:
+@@ -180,10 +179,7 @@
+                       " python-dev|python-devel." % (python_h)
+             config.numpy_include_dirs
+-            result = config_cmd.try_run(testcode,
+-                                include_dirs = [python_include] + \
+-                                                       config.numpy_include_dirs,
+-                                        library_dirs = default_lib_dirs)
++            result = config_cmd.try_compile(testcode)
+             if not result:
+                 raise SystemError,"Failed to generate numpy configuration. "\
index e23c89e..157dada 100644 (file)
@@ -6,13 +6,22 @@ PR = "ml0"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/numpy/numpy-${PV}.tar.gz \
            file://unbreak-assumptions.diff;patch=1 \
-          "
+          file://trycompile.diff;patch=1 \
+          file://config.h \
+          file://numpyconfig.h \
+         "
 
 S = "${WORKDIR}/numpy-${PV}"
 
 inherit distutils
 
-do_stage() {
-       cp -pPR Include/Num* ${STAGING_INCDIR}
+# Make the build fail and replace *config.h with proper one
+# This is a ugly, ugly hack - Koen
+do_compile_prepend() {
+         BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
+         ${STAGING_BINDIR_NATIVE}/python setup.py build ${DISTUTILS_BUILD_ARGS} || \
+         true
+        cp ${WORKDIR}/*config.h ${S}/build/$(ls ${S}/build | grep src)/numpy/core/include/numpy/
 }
 
+