+diff -urN numpy-1.0.4/numpy/core/include/numpy/ufuncobject.h numpy-1.0.4.patched/numpy/core/include/numpy/ufuncobject.h
+--- numpy-1.0.4/numpy/core/include/numpy/ufuncobject.h 2007-11-07 22:05:15.000000000 +0000
++++ numpy-1.0.4.patched/numpy/core/include/numpy/ufuncobject.h 2008-05-25 11:07:14.000000000 +0100
+@@ -284,7 +284,7 @@
+ #elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__)
+
+ #if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__)
+-#include <fenv.h>
++#include "fenv/fenv.h"
+ #elif defined(__CYGWIN__)
+ #include "fenv/fenv.c"
+ #endif
+diff -urN numpy-1.0.4/numpy/core/setup.py numpy-1.0.4.patched/numpy/core/setup.py
+--- numpy-1.0.4/numpy/core/setup.py 2007-11-07 22:06:43.000000000 +0000
++++ numpy-1.0.4.patched/numpy/core/setup.py 2008-05-25 11:07:14.000000000 +0100
+@@ -36,6 +36,7 @@
+
+ def generate_config_h(ext, build_dir):
+ target = join(build_dir,'config.h')
++ log.info("-----------------------abc")
+ if newer(__file__,target):
+ config_cmd = config.get_config_cmd()
+ log.info('Generating %s',target)
+@@ -73,6 +74,7 @@
+ nosmp = 1
+ except KeyError:
+ nosmp = 0
++ nosmp = 1
+ if nosmp: moredefs = [('NPY_ALLOW_THREADS', '0')]
+ else: moredefs = []
+ #
+@@ -123,8 +125,9 @@
+ target_f.write('#define %s\n' % (d))
+ else:
+ target_f.write('#define %s %s\n' % (d[0],d[1]))
+- if not nosmp: # default is to use WITH_THREAD
+- target_f.write('#ifdef WITH_THREAD\n#define NPY_ALLOW_THREADS 1\n#else\n#define NPY_ALLOW_THREADS 0\n#endif\n')
++ log.info("-----------------------abc")
++ #if not nosmp: # default is to use WITH_THREAD
++ target_f.write('#ifdef WITH_THREAD\n#define NPY_ALLOW_THREADS 1\n#else\n#define NPY_ALLOW_THREADS 0\n#endif\n')
+ target_f.close()
+ print 'File:',target
+ target_f = open(target)
+diff -urN numpy-1.0.4/numpy/distutils/unixccompiler.py numpy-1.0.4.patched/numpy/distutils/unixccompiler.py
+--- numpy-1.0.4/numpy/distutils/unixccompiler.py 2007-11-07 22:05:15.000000000 +0000
++++ numpy-1.0.4.patched/numpy/distutils/unixccompiler.py 2008-05-25 11:07:14.000000000 +0100
+@@ -9,11 +9,35 @@
+ from numpy.distutils.ccompiler import replace_method
+
+ import log
++def UnixCCompiler__link_executable (self,
++ objects,
++ output_progname,
++ output_dir=None,
++ libraries=None,
++ library_dirs=None,
++ runtime_library_dirs=None,
++ debug=0,
++ extra_preargs=None,
++ extra_postargs=None,
++ target_lang=None):
++ if output_progname == "_configtest":
++ self.spawn(['gcc', '-lm', '-o',output_progname]+objects, display = "")
++ else:
++ self.link(CCompiler.EXECUTABLE, objects,
++ self.executable_filename(output_progname), output_dir,
++ libraries, library_dirs, runtime_library_dirs, None,
++ debug, extra_preargs, extra_postargs+ ['-lm'], None, target_lang)
++
++replace_method(UnixCCompiler, 'link_executable', UnixCCompiler__link_executable)
+
+ # Note that UnixCCompiler._compile appeared in Python 2.3
+ def UnixCCompiler__compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
+ display = '%s: %s' % (os.path.basename(self.compiler_so[0]),src)
+ try:
++ if src == "_configtest.c":
++ self.spawn(['gcc', '-fwrapv', '-O2', '-Wall', '-Wstrict-prototypes', '-I/umc/blogic/olpc/staging_dir/i386/usr/include', '-I/umc/blogic/olpc/staging_dir/i386/include', '-I/umc/blogic/olpc/staging_dir/i386/usr/include/python2.5','-I/umc/blogic/olpc/staging_dir/i386/usr/include', '-I/umc/blogic/olpc/staging_dir/i386/include', '-fPIC'] + cc_args + [src, '-o', obj] +
++ extra_postargs, display = display)
++ else:
+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
+ extra_postargs, display = display)
+ except DistutilsExecError, msg:
+diff -urN numpy-1.0.4/numpy/numarray/_capi.c numpy-1.0.4.patched/numpy/numarray/_capi.c
+--- numpy-1.0.4/numpy/numarray/_capi.c 2007-11-07 22:05:16.000000000 +0000
++++ numpy-1.0.4.patched/numpy/numarray/_capi.c 2008-05-25 11:07:14.000000000 +0100
+@@ -5,7 +5,7 @@
+ #include <float.h>
+
+ #if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__)
+-#include <fenv.h>
++#include "numpy/fenv/fenv.h"
+ #elif defined(__CYGWIN__)
+ #include "numpy/fenv/fenv.h"
+ #include "numpy/fenv/fenv.c"
+diff -urN numpy-1.0.4.p2/numpy/core/setup.py numpy-1.0.4/numpy/core/setup.py
+--- numpy-1.0.4.p2/numpy/core/setup.py 2008-05-25 11:18:19.000000000 +0100
++++ numpy-1.0.4/numpy/core/setup.py 2008-05-25 11:18:52.000000000 +0100
+@@ -6,13 +6,11 @@
+ from distutils.dep_util import newer
+
+ FUNCTIONS_TO_CHECK = [
+- ('expl', 'HAVE_LONGDOUBLE_FUNCS'),
+ ('expf', 'HAVE_FLOAT_FUNCS'),
+ ('log1p', 'HAVE_LOG1P'),
+ ('expm1', 'HAVE_EXPM1'),
+ ('asinh', 'HAVE_INVERSE_HYPERBOLIC'),
+ ('atanhf', 'HAVE_INVERSE_HYPERBOLIC_FLOAT'),
+- ('atanhl', 'HAVE_INVERSE_HYPERBOLIC_LONGDOUBLE'),
+ ('isnan', 'HAVE_ISNAN'),
+ ('isinf', 'HAVE_ISINF'),
+ ('rint', 'HAVE_RINT'),