4 # Copyright (c) 2009 The NetBSD Foundation, Inc.
7 # This code is derived from software contributed to The NetBSD Foundation
8 # by Alistair Crooks (agc@netbsd.org)
10 # Redistribution and use in source and binary forms, with or without
11 # modification, are permitted provided that the following conditions
13 # 1. Redistributions of source code must retain the above copyright
14 # notice, this list of conditions and the following disclaimer.
15 # 2. Redistributions in binary form must reproduce the above copyright
16 # notice, this list of conditions and the following disclaimer in the
17 # documentation and/or other materials provided with the distribution.
19 # THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20 # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21 # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23 # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 # POSSIBILITY OF SUCH DAMAGE.
32 # rushed script to call swig and compile the output
33 # Usage: swigit <lang> <module>
35 prefix
=$
(pkg_info
-qp swig |
awk '{ print $2 }')
42 echo "You need to specify an interpreted language like perl or tcl"
46 dir
=$
(pkg_info
-qL perl |
awk '/EXTERN.h/ { gsub("/EXTERN.h$", ""); print }')
47 cstrings1
='#undef SvPOK'
48 cstrings2
='#define SvPOK(x) 1'
49 incpath
='CPPFLAGS+=-I'"$dir"
53 dir
=$
(pkg_info
-qL 'python*' |
awk '/Python.h/ { gsub("/Python.h$", ""); print }')
54 incpath
='CPPFLAGS+=-I'"$dir"
60 echo "You need to specify a module"
65 cat << EOF > ${module}${lang}.i
66 %module ${module}${lang}
68 #include <${module}.h>
75 cp ..
/..
/include
/${module}.h .
77 swig
${swigflags} -${lang} ${module}${lang}.i
81 # Automatically generated by swigit wrapper script
86 SRCS=${module}${lang}_wrap.c
89 CPPFLAGS+=-I\${PREFIX}/include
91 LDFLAGS+=-L\${PREFIX}/lib
97 cat << EOF > shlib_version
106 ln -s lib
${module}${lang}.so _${module}${lang}.so