Mercurial > gub
annotate gub/specs/guile.py @ 6476:5e8c30d45fc0
guile: depend on libffi.
author | Jan Nieuwenhuizen <janneke@gnu.org> |
---|---|
date | Thu, 03 Feb 2011 08:37:35 +0100 |
parents | 57f607784269 |
children | 00000bc42f8a |
rev | line source |
---|---|
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
1 import os |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
2 # |
5528
6dcb4e0a8146
tools::guile: debootstrap build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5470
diff
changeset
|
3 from gub import context |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
4 from gub import misc |
4592
5f2385e5390c
Eradicate use of with_vc, with_tarball, with_mirror, with_template.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4530
diff
changeset
|
5 from gub import loggedos |
4895
43408bcf252d
Move octal constants to gub.octal. Helps python2 <-> python3 transition.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4863
diff
changeset
|
6 from gub import octal |
4592
5f2385e5390c
Eradicate use of with_vc, with_tarball, with_mirror, with_template.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4530
diff
changeset
|
7 from gub import repository |
4628
e4825590ebe5
s/targetbuild/target/, s/toolsbuild/tools/.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4609
diff
changeset
|
8 from gub import target |
4729
8627b3087e86
Use relative -rpath for guile, use reloc patch for guile tools.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4721
diff
changeset
|
9 from gub import tools |
6445
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
10 from gub import tools32 |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
11 |
4628
e4825590ebe5
s/targetbuild/target/, s/toolsbuild/tools/.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4609
diff
changeset
|
12 class Guile (target.AutoBuild): |
5382
82ac909ba559
guile: bump to 1.8.7 (was some GIT version). Workaround for ball/GIT download.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5369
diff
changeset
|
13 # source = 'git://git.sv.gnu.org/guile.git&branch=branch_release-1-8&revision=bba579611b3671c7e4c1515b100f01c048a07935' |
82ac909ba559
guile: bump to 1.8.7 (was some GIT version). Workaround for ball/GIT download.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5369
diff
changeset
|
14 source = 'http://ftp.gnu.org/pub/gnu/guile/guile-1.8.7.tar.gz' |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
15 source = 'http://alpha.gnu.org/gnu/guile/guile-1.9.14.tar.gz' |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
16 patches = [ |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
17 #'guile-reloc-1.8.6.patch', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
18 'guile-1.9.14-reloc.patch', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
19 #'guile-cexp.patch', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
20 'guile-1.8.6-test-use-srfi.patch', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
21 #'guile-1.8.7-doc-snarfing.patch', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
22 'guile-1.9.14-configure-cross.patch', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
23 'guile-1.9.14-cross.patch', |
6475
57f607784269
guile: use included gnulib-tools. Fixes build & patching.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6473
diff
changeset
|
24 'guile-1.9.14-gnulib-libunistring.patch', |
57f607784269
guile: use included gnulib-tools. Fixes build & patching.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6473
diff
changeset
|
25 #'guile-1.9.14-gnulib-libunistring-retooled.patch', |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
26 ] |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
27 force_autoupdate = True |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
28 dependencies = [ |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
29 'gettext-devel', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
30 'gmp-devel', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
31 'libtool', |
6476
5e8c30d45fc0
guile: depend on libffi.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6475
diff
changeset
|
32 'libffi', |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
33 'libunistring', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
34 'libgc', |
6447
302dc1c206fe
tools::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6445
diff
changeset
|
35 'tools::guile', |
6475
57f607784269
guile: use included gnulib-tools. Fixes build & patching.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6473
diff
changeset
|
36 'tools::gnulib', |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
37 ] |
5641
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
38 guile_configure_flags = misc.join_lines (''' |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
39 --without-threads |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
40 --with-gnu-ld |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
41 --enable-deprecated |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
42 --enable-discouraged |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
43 --disable-error-on-warning |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
44 --enable-relocation |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
45 --enable-rpath |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
46 --with-pic |
5641
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
47 ''') |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
48 configure_variables = (target.AutoBuild.configure_variables |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
49 + misc.join_lines (''' |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
50 CC_FOR_BUILD=" |
5735
3fa9a9f36622
LIBRESTRICT=open:stat: flex, guile, build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5732
diff
changeset
|
51 LD_PRELOAD= |
5641
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
52 C_INCLUDE_PATH= |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
53 CPPFLAGS= |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
54 LIBRARY_PATH= |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
55 PATH_SEPARATOR=':' |
5732
fec3ceb5ef84
LIBRESTRICT=open:stat updates.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5685
diff
changeset
|
56 PATH=/usr/bin:$PATH |
5735
3fa9a9f36622
LIBRESTRICT=open:stat: flex, guile, build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5732
diff
changeset
|
57 /usr/bin/cc |
5641
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
58 -I%(builddir)s |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
59 -I%(srcdir)s |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
60 -I%(builddir)s/libguile |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
61 -I. |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
62 -I%(srcdir)s/libguile" |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
63 ''')) |
6470
f1b28c608b3a
guile: never use gnulib's putenv. Fixes env-related bugs such as pango fonts.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6468
diff
changeset
|
64 config_cache_overrides = target.AutoBuild.config_cache_overrides + ''' |
f1b28c608b3a
guile: never use gnulib's putenv. Fixes env-related bugs such as pango fonts.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6468
diff
changeset
|
65 gl_cv_func_svid_putenv=yes |
f1b28c608b3a
guile: never use gnulib's putenv. Fixes env-related bugs such as pango fonts.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6468
diff
changeset
|
66 ''' |
5781
be607c132aa0
guile: move LD_LIBRARY_PATH libgmp.so hack to compile_flags_native. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5756
diff
changeset
|
67 # FIXME: guile runs gen_scmconfig [when not x-building also guile] |
be607c132aa0
guile: move LD_LIBRARY_PATH libgmp.so hack to compile_flags_native. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5756
diff
changeset
|
68 # without setting the proper LD_LIBRARY_PATH. |
be607c132aa0
guile: move LD_LIBRARY_PATH libgmp.so hack to compile_flags_native. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5756
diff
changeset
|
69 compile_flags_native = (' LD_PRELOAD= ' |
5813
16524f1c9e4d
guile.py: yet another Let's run i386 on 64 bit hardware build fix.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5781
diff
changeset
|
70 + ' LD_LIBRARY_PATH=%(tools_prefix)s/lib:${LD_LIBRARY_PATH-/foe} ' |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
71 + ' CFLAGS="-I%(srcdir)s -I%(builddir)s -DHAVE_CONFIG_H=1"' |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
72 + ' LIBFFI_CFLAGS=' |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
73 + ' LDFLAGS=' |
5813
16524f1c9e4d
guile.py: yet another Let's run i386 on 64 bit hardware build fix.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5781
diff
changeset
|
74 + ' cross_compiling=yes ') |
5756
a78f20fde0cd
Guile: also set LD_LIBRARY_PATH when cross building. Fixes etch debootstrap.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5735
diff
changeset
|
75 # FIXME: guile runs gen_scmconfig [when not x-building also guile] |
a78f20fde0cd
Guile: also set LD_LIBRARY_PATH when cross building. Fixes etch debootstrap.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5735
diff
changeset
|
76 # without setting the proper LD_LIBRARY_PATH. |
6445
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
77 configure_command = ('GUILE_FOR_BUILD=%(tools_archmatch_prefix)s/bin/guile ' |
5656
4ccd65fdeff1
Grand def configure_command () -> class.configure_command hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5649
diff
changeset
|
78 + target.AutoBuild.configure_command |
4ccd65fdeff1
Grand def configure_command () -> class.configure_command hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5649
diff
changeset
|
79 + guile_configure_flags) |
6445
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
80 compile_command = ('export preinstguile=%(tools_archmatch_prefix)s/bin/guile; ' |
5756
a78f20fde0cd
Guile: also set LD_LIBRARY_PATH when cross building. Fixes etch debootstrap.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5735
diff
changeset
|
81 + target.AutoBuild.compile_command) |
6445
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
82 install_command = ('export preinstguile=%(tools_archmatch_prefix)s/bin/guile; ' |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
83 + target.AutoBuild.install_command) |
5732
fec3ceb5ef84
LIBRESTRICT=open:stat updates.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5685
diff
changeset
|
84 subpackage_names = ['doc', 'devel', 'runtime', ''] |
5308
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
85 @staticmethod |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
86 def version_from_VERSION (self): |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
87 return self.version_from_shell_script ('GUILE-VERSION', |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
88 'GUILE_MAJOR_VERSION', |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
89 '%(GUILE_MAJOR_VERSION)s.%(GUILE_MINOR_VERSION)s.%(GUILE_MICRO_VERSION)s', |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
90 '1.8.6') |
4018
e62cf0f59236
Update guile source, recover from auto with_vc.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4016
diff
changeset
|
91 def __init__ (self, settings, source): |
4628
e4825590ebe5
s/targetbuild/target/, s/toolsbuild/tools/.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4609
diff
changeset
|
92 target.AutoBuild.__init__ (self, settings, source) |
5308
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
93 if isinstance (source, repository.Git): |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
94 ##source.version = lambda: '1.8.6' |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
95 source.version = misc.bind_method (Guile.version_from_VERSION, |
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
96 source) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
97 self.so_version = '17' |
6471
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
98 # REMOVE putenv! |
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
99 gnulib_modules = 'alignof alloca-opt announce-gen autobuild byteswap canonicalize-lgpl duplocale environ extensions flock fpieee full-read full-write func gendocs getaddrinfo git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib iconv_open-utf inet_ntop inet_pton isinf isnan lib-symbol-versions lib-symbol-visibility libunistring locale maintainer-makefile nproc stat-time stdlib strcase strftime striconveh string sys_stat verify version-etc-fsf vsnprintf warnings ' |
5131
6e3713719820
Move mingw guile doc patching up to Guile and Guile__tools. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5117
diff
changeset
|
100 def patch (self): |
6e3713719820
Move mingw guile doc patching up to Guile and Guile__tools. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5117
diff
changeset
|
101 self.dump ('''#!/bin/sh |
6445
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
102 exec %(tools_archmatch_prefix)s/bin/guile "$@" |
5131
6e3713719820
Move mingw guile doc patching up to Guile and Guile__tools. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5117
diff
changeset
|
103 ''', "%(srcdir)s/pre-inst-guile.in") |
6049 | 104 #self.autopatch () |
6471
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
105 self.system ('cp -pv %(sourcefiledir)s/fcntl-o.m4 %(srcdir)s/m4') |
6475
57f607784269
guile: use included gnulib-tools. Fixes build & patching.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6473
diff
changeset
|
106 self.system ('%(tools_prefix)s/share/gnulib/gnulib-tool --import --dir=%(srcdir)s --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --libtool --macro-prefix=gl --no-vc-files %(gnulib_modules)s') |
5131
6e3713719820
Move mingw guile doc patching up to Guile and Guile__tools. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5117
diff
changeset
|
107 target.AutoBuild.patch (self) |
6473
3f3bf4ecad6e
guile: more aggressive gnulib:putenv exorcism.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6471
diff
changeset
|
108 self.file_sub ([('putenv', 'gnulib_putenv')], '%(srcdir)s/lib/putenv.c') |
3f3bf4ecad6e
guile: more aggressive gnulib:putenv exorcism.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6471
diff
changeset
|
109 self.file_sub ([('putenv', 'gnulib_putenv')], '%(srcdir)s/lib/stdlib.in.h') |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
110 def autoupdate (self): |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
111 self.system ('cd %(srcdir)s && autoreconf') |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
112 # .libs/libguile_2.0_la-arbiters.o: In function `__gmpz_abs': |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
113 # arbiters.c:(.text+0x0): multiple definition of `__gmpz_abs' |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
114 self.file_sub ([('-std=gnu99', ''),('-std=c99', '')], '%(srcdir)s/configure') |
6452
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
115 self.file_sub ([('cross_compiling=(maybe|no|yes)', |
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
116 'cross_compiling=yes')], '%(srcdir)s/configure') |
5467
851a62cb12ae
tools::guile: build fix.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5383
diff
changeset
|
117 def autopatch (self): |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
118 self.file_sub ([(r'AC_CONFIG_SUBDIRS\(guile-readline\)', '')], |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
119 '%(srcdir)s/configure.in') |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
120 self.file_sub ([(r'guile-readline', '')], |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
121 '%(srcdir)s/Makefile.am') |
5467
851a62cb12ae
tools::guile: build fix.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5383
diff
changeset
|
122 # Guile [doc] does not compile with dash *and* not with |
851a62cb12ae
tools::guile: build fix.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5383
diff
changeset
|
123 # librestrict-stat.so; patch out. |
5732
fec3ceb5ef84
LIBRESTRICT=open:stat updates.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5685
diff
changeset
|
124 if isinstance (self.source, repository.Git): |
fec3ceb5ef84
LIBRESTRICT=open:stat updates.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5685
diff
changeset
|
125 self.file_sub ([(' doc ', ' ')], '%(srcdir)s/Makefile.am') |
fec3ceb5ef84
LIBRESTRICT=open:stat updates.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5685
diff
changeset
|
126 self.file_sub ([('guile-readline', '')], '%(srcdir)s/Makefile.am') |
fec3ceb5ef84
LIBRESTRICT=open:stat updates.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5685
diff
changeset
|
127 else: |
5369
0069380ed85b
darwin-x86::Denemo: further progress.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5308
diff
changeset
|
128 self.file_sub ([(' doc ', ' ')], '%(srcdir)s/Makefile.in') |
5467
851a62cb12ae
tools::guile: build fix.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5383
diff
changeset
|
129 self.file_sub ([('guile-readline', '')], '%(srcdir)s/Makefile.in') |
4018
e62cf0f59236
Update guile source, recover from auto with_vc.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4016
diff
changeset
|
130 self.dump ('', '%(srcdir)s/doc/ref/version.texi') |
e62cf0f59236
Update guile source, recover from auto with_vc.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4016
diff
changeset
|
131 self.dump ('', '%(srcdir)s/doc/tutorial/version.texi') |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
132 def compile (self): |
4738
a3a67b9d41bf
Remove cruft, use %(prefix)s/slib instead of /lib for shared libdir.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4735
diff
changeset
|
133 ## Ugh: broken dependencies break parallel build with make -jX |
5644
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
134 self.system ('cd %(builddir)s/libguile && make %(compile_flags_native)s gen-scmconfig guile_filter_doc_snarfage') |
4738
a3a67b9d41bf
Remove cruft, use %(prefix)s/slib instead of /lib for shared libdir.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4735
diff
changeset
|
135 # Remove -L %(system_root)s from `guile-config link' |
5644
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
136 self.system ('cd %(builddir)s/libguile && make %(compile_flags_native)slibpath.h') |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
137 self.file_sub ([('''-L *%(system_root)s''', '-L')], |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
138 '%(builddir)s/libguile/libpath.h') |
4628
e4825590ebe5
s/targetbuild/target/, s/toolsbuild/tools/.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4609
diff
changeset
|
139 target.AutoBuild.compile (self) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
140 def install (self): |
5383
602ba2aa82ba
Move update_libtool from linux-x86::guile up to Guile. Fixes FreeBSD.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5382
diff
changeset
|
141 # with 1.8.7: libtool: cannot install directory not ending in... |
602ba2aa82ba
Move update_libtool from linux-x86::guile up to Guile. Fixes FreeBSD.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5382
diff
changeset
|
142 # after config.status is being re-run for building of libpath.h |
602ba2aa82ba
Move update_libtool from linux-x86::guile up to Guile. Fixes FreeBSD.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5382
diff
changeset
|
143 self.update_libtool () |
4628
e4825590ebe5
s/targetbuild/target/, s/toolsbuild/tools/.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4609
diff
changeset
|
144 target.AutoBuild.install (self) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
145 majmin_version = '.'.join (self.expand ('%(version)s').split ('.')[0:2]) |
6468
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
146 majmin_version = '2.0' |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
147 |
6468
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
148 self.dump (''' |
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
149 prependdir GUILE_LOAD_PATH=$INSTALLER_PREFIX/share/guile/%(majmin_version)s |
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
150 prependdir GUILE_LOAD_PATH=$INSTALLER_PREFIX/share/guile/site |
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
151 prependdir GUILE_LOAD_COMPILED_PATH=$INSTALLER_PREFIX/lib/guile/%(majmin_version)s/ccache |
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
152 ''', |
3757
1af29eeaad30
Eradicate stray use of `/usr'.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
3703
diff
changeset
|
153 '%(install_prefix)s/etc/relocate/guile.reloc', |
4313
902fe5ef547f
Updates to easy GNU coding: haakje nits.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4219
diff
changeset
|
154 env=locals ()) |
3890
0a85f8006a68
Defer dumping and chmodding of guile-config.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
3812
diff
changeset
|
155 version = self.expand ('%(version)s') |
4863
929eed24fefa
Python3: no tabs: sed -i -e 's@^\( *\)\t@\1 @g'.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4828
diff
changeset
|
156 #FIXME: c&p linux.py |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
157 self.dump ('''\ |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
158 #! /bin/sh |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
159 test "$1" = "--version" && echo "%(target_architecture)s-guile-config - Guile version %(version)s" |
3757
1af29eeaad30
Eradicate stray use of `/usr'.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
3703
diff
changeset
|
160 prefix=%(system_prefix)s |
6444
1455e040df43
guile: small cleanups and fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6443
diff
changeset
|
161 test "$1" = "compile" && echo "-I$prefix/include/guile/2.0" |
1455e040df43
guile: small cleanups and fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6443
diff
changeset
|
162 test "$1" = "link" && echo "-L$prefix/lib -lguile-2.0 -lgmp" |
6007
fdef984a92a0
guile: support info command. tools::guile: keep devel stuff.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6002
diff
changeset
|
163 test "$1" = "info" && test "$2" = "guileversion" && echo "%(version)s" |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
164 exit 0 |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
165 ''', |
4809
5bafc4086a02
Junk literal use of /usr and /cross.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4794
diff
changeset
|
166 '%(install_prefix)s%(cross_dir)s/bin/%(target_architecture)s-guile-config') |
4895
43408bcf252d
Move octal constants to gub.octal. Helps python2 <-> python3 transition.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4863
diff
changeset
|
167 self.chmod ('%(install_prefix)s%(cross_dir)s/bin/%(target_architecture)s-guile-config', octal.o755) |
5268
2faa22764b3a
Add denemo with dependencies for mingw32.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5168
diff
changeset
|
168 self.system ('cd %(install_prefix)s%(cross_dir)s/bin && cp -pv %(target_architecture)s-guile-config guile-config') |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
169 |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
170 class Guile__mingw (Guile): |
3960
7147fad42fbc
Grand __init__ (self, settings, source) replace.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
3943
diff
changeset
|
171 def __init__ (self, settings, source): |
7147fad42fbc
Grand __init__ (self, settings, source) replace.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
3943
diff
changeset
|
172 Guile.__init__ (self, settings, source) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
173 # Configure (compile) without -mwindows for console |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
174 self.target_gcc_flags = '-mms-bitfields' |
6471
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
175 patches = Guile.patches + [ # [x for x in Guile.patches if not 'libunistring' in x] + [ |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
176 'guile-1.9.14-mingw.patch', |
6452
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
177 'guile-1.9.14-gnulib-mingw.patch', |
6459
73d419fb8438
mingw::guile: add dirent patch. Fixes starting up lilypond.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6457
diff
changeset
|
178 'guile-1.9.14-mingw-dirent.patch', |
6471
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
179 #'guile-1.9.14-gnulib-libunistring-retooled.patch', |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
180 ] |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
181 dependencies = (Guile.dependencies |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
182 + [ |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
183 'regex-devel', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
184 'mingw-extras', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
185 ]) |
5641
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
186 configure_flags = (Guile.configure_flags |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
187 + ' --without-threads') |
387483526bff
Grand configure_flags (), Class.configure_flags replacement. Also _vars.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5635
diff
changeset
|
188 configure_variables = (Guile.configure_variables |
5735
3fa9a9f36622
LIBRESTRICT=open:stat: flex, guile, build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5732
diff
changeset
|
189 .replace ("':'", "';'") |
6468
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
190 ###we're debugging here |
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
191 ###CFLAGS='-O2 -DHAVE_CONFIG_H=1 -I%(builddir)s' |
5369
0069380ed85b
darwin-x86::Denemo: further progress.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5308
diff
changeset
|
192 + misc.join_lines (''' |
6468
0ea4f16c7d7a
guile: somewhat better relocation patch.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6459
diff
changeset
|
193 CFLAGS='-g -DHAVE_CONFIG_H=1 -I%(builddir)s' |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
194 LIBS='-lgc -lmingw-extras' |
5369
0069380ed85b
darwin-x86::Denemo: further progress.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5308
diff
changeset
|
195 ''')) |
5665
c2252fd358e9
Grand config_cache_overrides () -> class.config_cache_overrides hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5660
diff
changeset
|
196 config_cache_overrides = Guile.config_cache_overrides + ''' |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
197 gl_cv_socket_ipv6=no |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
198 guile_cv_have_ipv6=no |
4794
3b2e201bd281
Mingw: make guile build without threads, even when they're installed.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4773
diff
changeset
|
199 scm_cv_struct_timespec=${scm_cv_struct_timespec=no} |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
200 guile_cv_func_usleep_declared=${guile_cv_func_usleep_declared=yes} |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
201 guile_cv_exeext=${guile_cv_exeext=} |
3757
1af29eeaad30
Eradicate stray use of `/usr'.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
3703
diff
changeset
|
202 libltdl_cv_sys_search_path=${libltdl_cv_sys_search_path="%(system_prefix)s/lib"} |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
203 ''' |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
204 def configure (self): |
4764
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
205 self.file_sub ([('''^#(LIBOBJS=".*fileblocks.*)''', r'\1')], |
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
206 '%(srcdir)s/configure') |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
207 Guile.configure (self) |
4764
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
208 for libtool in ['%(builddir)s/libtool']: # readline patched-out: '%(builddir)s/guile-readline/libtool']: |
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
209 self.file_sub ([('-mwindows', '')], libtool) |
6471
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
210 |
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
211 gnulib_modules = (Guile.gnulib_modules |
834c939b7f86
guile: always retool and junk putenv.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6470
diff
changeset
|
212 + 'accept bind close connect getpeername getsockname getsockopt listen recv recv recvfrom send sendto setsockopt shutdown socket ') |
4764
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
213 def compile (self): |
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
214 ## Why the !?#@$ is .EXE only for guile_filter_doc_snarfage? |
5644
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
215 self.system ('''cd %(builddir)s/libguile &&make %(compile_flags_native)sgen-scmconfig guile_filter_doc_snarfage.exe''') |
4764
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
216 self.system ('cd %(builddir)s/libguile && cp guile_filter_doc_snarfage.exe guile_filter_doc_snarfage') |
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
217 Guile.compile (self) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
218 def install (self): |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
219 Guile.install (self) |
6007
fdef984a92a0
guile: support info command. tools::guile: keep devel stuff.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6002
diff
changeset
|
220 self.system ('''cd %(install_prefix)s/bin && cp guile.exe guile-windows.exe''') |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
221 |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
222 class Guile__linux (Guile): |
5660
f1cc9e07d8a9
Grand compile_command () -> class.compile_command hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5656
diff
changeset
|
223 compile_command = ('export LD_LIBRARY_PATH=%(builddir)s/libguile/.libs:$LD_LIBRARY_PATH;' |
6452
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
224 + Guile.compile_command) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
225 |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
226 class Guile__linux__ppc (Guile__linux): |
5665
c2252fd358e9
Grand config_cache_overrides () -> class.config_cache_overrides hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5660
diff
changeset
|
227 config_cache_overrides = Guile__linux.config_cache_overrides + ''' |
5605
964452fe46fc
guile: configure_flags update. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5592
diff
changeset
|
228 guile_cv_have_libc_stack_end=no |
964452fe46fc
guile: configure_flags update. Fixes build.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5592
diff
changeset
|
229 ''' |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
230 |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
231 class Guile__freebsd (Guile): |
5665
c2252fd358e9
Grand config_cache_overrides () -> class.config_cache_overrides hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5660
diff
changeset
|
232 config_cache_overrides = Guile.config_cache_overrides + ''' |
4764
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
233 ac_cv_type_socklen_t=yes |
13f4d9792085
Guile tweaks for mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4738
diff
changeset
|
234 guile_cv_use_csqrt="no" |
5665
c2252fd358e9
Grand config_cache_overrides () -> class.config_cache_overrides hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5660
diff
changeset
|
235 ''' |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
236 |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
237 class Guile__darwin (Guile): |
6452
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
238 patches = Guile.patches + ['guile-1.9.14-pthreads-cross.patch'] |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
239 def install (self): |
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
240 Guile.install (self) |
4210 | 241 def dylib_link (logger, fname): |
242 directory = os.path.split (fname)[0] | |
243 src = os.path.basename (fname) | |
244 dst = os.path.splitext (os.path.basename (fname))[0] + '.so' | |
4313
902fe5ef547f
Updates to easy GNU coding: haakje nits.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4219
diff
changeset
|
245 loggedos.symlink (logger, src, os.path.join (directory, dst)) |
4210 | 246 self.map_locate (dylib_link, |
247 self.expand ('%(install_prefix)s/lib/'), | |
248 'libguile-srfi*.dylib') | |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
249 def configure (self): |
5369
0069380ed85b
darwin-x86::Denemo: further progress.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5308
diff
changeset
|
250 self.file_sub ([('guile-readline', '')], |
0069380ed85b
darwin-x86::Denemo: further progress.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5308
diff
changeset
|
251 '%(srcdir)s/Makefile.in') |
6317
c24904e00a69
Fix darwin-ppc::guile
Masamichi Hosoda <trueroad@users.noreply.github.com>
parents:
6049
diff
changeset
|
252 Guile.configure (self) |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
253 |
5308
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
254 class Guile__linux__x86 (Guile): |
6452
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
255 patches = Guile.patches + [ |
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
256 'guile-1.9.14-pthreads-cross.patch', |
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
257 'guile-1.9.14-struct.patch', |
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
258 ] |
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
259 compile_flags_native = (Guile.compile_flags_native + |
d0006ae646bd
guile: mingw and linux fixes. Now also runs on mingw.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6447
diff
changeset
|
260 'CPATH="%(srcdir)s:%(builddir)s:%(system_prefix)s/include" ') |
5308
2b886b00c83e
Guile build fix for linux-x86, bump to 1.8.7, use version_from_shell_script.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5268
diff
changeset
|
261 |
4628
e4825590ebe5
s/targetbuild/target/, s/toolsbuild/tools/.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4609
diff
changeset
|
262 class Guile__tools (tools.AutoBuild, Guile): |
6447
302dc1c206fe
tools::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6445
diff
changeset
|
263 patches = [] |
5635
3ecad6b5f9b1
Grand rename: _get_build_dependencies () -> dependencies.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5605
diff
changeset
|
264 dependencies = (Guile.dependencies |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
265 + [ |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
266 'autoconf', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
267 'automake', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
268 'gettext', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
269 'flex', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
270 'libtool' |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
271 ]) |
5644
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
272 make_flags = Guile.make_flags |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
273 # Doing make gen-scmconfig, guile starts a configure recheck: |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
274 # cd .. && make am--refresh |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
275 # /bin/sh ./config.status --recheck |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
276 # leading to |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
277 # checking size of char... 0 |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
278 # Great idea, let's re-check! You never know... :-) |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
279 compile_flags_native = misc.join_lines (''' |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
280 LD_LIBRARY_PATH=%(system_prefix)s/lib |
6049 | 281 CFLAGS='-O2 -I%(system_prefix)s/include' |
5644
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
282 LDFLAGS='-L%(system_prefix)s/lib %(rpath)s' |
7aee893b7746
Grand make_flags, compile_flags, install_flags hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5643
diff
changeset
|
283 ''') |
5656
4ccd65fdeff1
Grand def configure_command () -> class.configure_command hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5649
diff
changeset
|
284 configure_command = ('LD_LIBRARY_PATH=%(system_prefix)s/lib:${LD_LIBRARY_PATH-/foe} ' |
4ccd65fdeff1
Grand def configure_command () -> class.configure_command hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5649
diff
changeset
|
285 + tools.AutoBuild.configure_command |
4ccd65fdeff1
Grand def configure_command () -> class.configure_command hack.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5649
diff
changeset
|
286 + Guile.guile_configure_flags) |
5685
55c3b2b2a645
cygwin::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5665
diff
changeset
|
287 # FIXME: when configuring, guile runs binaries linked against |
55c3b2b2a645
cygwin::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5665
diff
changeset
|
288 # libltdl. |
55c3b2b2a645
cygwin::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5665
diff
changeset
|
289 # FIXME: when not x-building, guile runs gen_scmconfig, guile without |
55c3b2b2a645
cygwin::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5665
diff
changeset
|
290 # setting the proper LD_LIBRARY_PATH. |
55c3b2b2a645
cygwin::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
5665
diff
changeset
|
291 compile_command = ('export LD_LIBRARY_PATH=%(builddir)s/libguile/.libs:%(system_prefix)s/lib:${LD_LIBRARY_PATH-/foe};' |
6447
302dc1c206fe
tools::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6445
diff
changeset
|
292 + tools.AutoBuild.compile_command) |
302dc1c206fe
tools::guile: build fixes.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6445
diff
changeset
|
293 install_command = tools.AutoBuild.install_command |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
294 def patch (self): |
4987
d82e369c5fc3
Bump libtool to 2.2.6a. Should allow junking much libtool hackings.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4984
diff
changeset
|
295 tools.AutoBuild.patch (self) |
6049 | 296 #Guile.autopatch (self) |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
297 self.system ('cp -pv %(sourcefiledir)s/fcntl-o.m4 %(srcdir)s/m4') |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
298 def autoupdate (self): |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
299 self.system ('cd %(srcdir)s && autoreconf') |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
300 # .libs/libguile_2.0_la-arbiters.o: In function `__gmpz_abs': |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
301 # arbiters.c:(.text+0x0): multiple definition of `__gmpz_abs' |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
302 self.file_sub ([('-std=gnu99', ''),('-std=c99', '')], '%(srcdir)s/configure') |
3365
cb9077953e4e
Grand lib -> gub, specs -> gub/specs, gub/specs/cross renaming.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
303 def install (self): |
4729
8627b3087e86
Use relative -rpath for guile, use reloc patch for guile tools.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
4721
diff
changeset
|
304 tools.AutoBuild.install (self) |
6443
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
305 self.system ('cd %(install_root)s%(packaging_suffix_dir)s%(prefix_dir)s/bin && cp guile guile-1.9') |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
306 # self.file_sub ([('[(]string-join other-flags[)]', '(string-join (filter (lambda (x) (not (equal? x "-L/usr/lib"))) other-flags))')], |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
307 # '%(install_root)s%(packaging_suffix_dir)s%(prefix_dir)s/bin/guile-config', |
344d21a6233d
guile: bump to 1.9.14.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6317
diff
changeset
|
308 # must_succeed=True) |
6445
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
309 |
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
310 class Guile__tools32 (tools32.AutoBuild, Guile__tools): |
64050ee2dd8a
tools32::guile: Support building linux-x86 and mingw[32] guile on linux-64.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6444
diff
changeset
|
311 pass |