mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-04 22:33:27 +00:00
7d9b1f28c4
Python than 1.5. (Currently this module only works with 1.5 though) Feedback status: submitted to the author
90 lines
2.5 KiB
Plaintext
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")
|