1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-04 22:33:27 +00:00
freebsd-ports/lang/ruby-python/files/patch-aa
Akinori MUSHA 7d9b1f28c4 Improve the configure script and add a knob to use another version of
Python than 1.5. (Currently this module only works with 1.5 though)

Feedback status:	submitted to the author
2000-09-10 20:13:12 +00:00

90 lines
2.5 KiB
Plaintext

--- extconf.rb.orig Mon Sep 11 01:14:42 2000
+++ extconf.rb Mon Sep 11 04:31:30 2000
@@ -1,35 +1,41 @@
require 'mkmf'
-py_dir = with_config("python-dir")
-if py_dir
- dirs = [py_dir]
+python = with_config("python", "python1.5")
+python = `which #{python}`.chomp
+
+exit(1) unless File.executable? python
+
+py_name = File.basename(python)
+py_dir = `#{python} -c 'import sys; print sys.exec_prefix' < /dev/null`.split(/\n/)[0]
+
+exit(1) unless File.directory? py_dir
+
+py_includedir = py_dir + "/include/" + py_name
+py_libdir = py_dir + "/lib/" + py_name
+py_configdir = py_libdir + "/config"
+py_makefile = py_configdir + "/Makefile"
+
+print "checking for #{py_makefile}... "
+if File.exists? py_makefile
+ print "yes\n"
else
- dirs = ['/usr/local', '/usr']
- if File.executable? `which python`.chomp
- d = `python -c 'import sys; print sys.exec_prefix' < /dev/null`
- d = d.split(/\n/).shift
- dirs.unshift d if d and File.directory? d
- end
+ print "no\n"
+ exit(1)
end
-for py_dir in dirs
- py_includedir = py_dir + "/include/python1.5"
- py_libdir = py_dir + "/lib/python1.5"
- py_configdir = py_libdir + "/config"
- py_makefile = py_configdir + "/Makefile"
+$CFLAGS += " -I#{py_includedir}"
+$LDFLAGS += " -L#{py_configdir}"
- print "checking for #{py_makefile}... "
- if File.exists? py_makefile
- print "yes\n"
- break
- else
- print "no\n"
+if with_config("pthread")
+ if !have_library("pthread", "pthread_create")
+ $LDFLAGS += " -pthread"
+ $libs.sub!(/-lc\b/, '-lc_r')
+
+ if !have_func("pthread_create")
+ exit(1)
+ end
end
end
-exit(1) unless File.exists? py_makefile
-
-$CFLAGS = "-I#{py_includedir}"
-$LDFLAGS = "-L#{py_configdir}"
# If python is linked with extra libraries (e.g. -lpthread on Linux,
# -lsocket on Solaris, etc.), have_library test will fail and built
@@ -59,11 +65,13 @@
end
$LOCAL_LIBS << py_extralibs
-if have_library("python1.5", "Py_Initialize") && have_header("Python.h")
- # If DEBUG defined, you need python compiled with Py_DEBUG defined,
- # like as building python with "make OPT='-g -O2 -DPy_DEBUG'"
- if have_func('_Py_NewReference')
- $CFLAGS += " -DDEBUG"
- end
- create_makefile("python")
+if !have_library(py_name, "Py_Initialize") || !have_header("Python.h")
+ exit(1)
+end
+
+# If DEBUG defined, you need python compiled with Py_DEBUG defined,
+# like as building python with "make OPT='-g -O2 -DPy_DEBUG'"
+if have_func('_Py_NewReference')
+ $CFLAGS += " -DDEBUG"
end
+create_makefile("python")