[plt-scheme] [patch] some -fPIC changes

From: Marijn Schouten (hkBst) (hkBst at gentoo.org)
Date: Sun Jul 22 11:34:49 EDT 2007

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi list,

this is another patch which fixes an install error on my amd64 box, namely:

setup-plt: Installing MrEd launcher
/var/tmp/portage/dev-scheme/drscheme-370.6/image//usr/bin/plt-web-server
setup-plt: Installing MzScheme launcher
/var/tmp/portage/dev-scheme/drscheme-370.6/image//usr/bin/plt-web-server-text
setup-plt: Installing Help
setup-plt: Installing Draw Teachpack
setup-plt: Installing Geometry Teachpack
setup-plt: Installing Colors Teachpack
setup-plt: Installing Java Graphics Teachpack
setup-plt: Installing Imperative Draw Teachpack
setup-plt: Installing ProfessorJ
setup-plt: Post-Installing MrEd
setup-plt: Done setting up
setup-plt:
setup-plt: Error during Early Install for sgl
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl)
setup-plt:   make: Failed to make compiled/gl-info.zo; link-extension: command
failed
setup-plt: Error during Compiling .zos for Doors game library
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/games/doors)
setup-plt:   default-load-handler: cannot open input file:
"/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl/gl-info.ss"
(No such file or directory; errno=2)
setup-plt: Error during Compiling .zos for Jewel
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/games/jewel)
setup-plt:   default-load-handler: cannot open input file:
"/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl/gl-info.ss"
(No such file or directory; errno=2)
setup-plt: Error during Compiling .zos for Checkers
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/games/checkers)
setup-plt:   default-load-handler: cannot open input file:
"/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl/gl-info.ss"
(No such file or directory; errno=2)
setup-plt: Error during Compiling .zos for Gobblet
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/games/gobblet)
setup-plt:   default-load-handler: cannot open input file:
"/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl/gl-info.ss"
(No such file or directory; errno=2)
setup-plt: Error during Compiling .zos for 3D board game library
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/games/gl-board-game)
setup-plt:   default-load-handler: cannot open input file:
"/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl/gl-info.ss"
(No such file or directory; errno=2)
setup-plt: Error during Compiling .zos for sgl
(/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl)
setup-plt:   default-load-handler: cannot open input file:
"/var/tmp/portage/dev-scheme/drscheme-370.6/image/usr/lib64/plt/collects/sgl/gl-info.ss"
(No such file or directory; errno=2)

The patch seems to have been used in gentoo since 350. I'm not sure if it does
the right thing.

Marijn

diff -ur plt.orig/collects/make/setup-extension.ss
plt/collects/make/setup-extension.ss
- --- plt.orig/collects/make/setup-extension.ss   2006-05-12 17:14:02.000000000
- -0400
+++ plt/collects/make/setup-extension.ss        2006-07-09 12:53:34.000000000
- -0400
@@ -191,7 +191,7 @@
            current-extension-linker-flags
            (if is-win?
                null
- -               (list (format "-L~a/lib" (path->string sys-path))))
+               (list "-fPIC" (format "-L~a/lib" (path->string sys-path))))

            ;; Add libs for Windows:
            (with-new-flags
diff -ur plt.orig/src/foreign/Makefile.in plt/src/foreign/Makefile.in
- --- plt.orig/src/foreign/Makefile.in    2005-06-29 15:28:16.000000000 -0400
+++ plt/src/foreign/Makefile.in 2006-07-09 12:53:34.000000000 -0400
@@ -3,7 +3,7 @@
 srcdir = @srcdir@
 builddir = @builddir@
 CC = @CC@
- -CFLAGS = @CFLAGS@ @COMPFLAGS@ @PREFLAGS@ @PROFFLAGS@ @OPTIONS@ @MZOPTIONS@ \
+CFLAGS = @CFLAGS@ @COMPFLAGS@ @PREFLAGS@ @PROFFLAGS@ @OPTIONS@ @MZOPTIONS@
- -fPIC \
          -I$(builddir)/../mzscheme \
          -I$(srcdir)/../mzscheme/include -I$(srcdir)/../mzscheme/src \
          -Igcc/libffi/include
diff -ur plt.orig/src/mzscheme/dynsrc/Makefile.in
plt/src/mzscheme/dynsrc/Makefile.in
- --- plt.orig/src/mzscheme/dynsrc/Makefile.in    2006-05-24 15:29:58.000000000
- -0400
+++ plt/src/mzscheme/dynsrc/Makefile.in 2006-07-09 12:54:47.000000000 -0400
@@ -18,14 +18,14 @@
 CFLAGS = @CFLAGS@ @COMPFLAGS@ @PREFLAGS@ -I$(builddir)/..
- -I$(srcdir)/../include -I$(srcdir)/../src @MZOPTIONS@

 dynlib:
- -       $(MAKE) ../mzdyn.o
+       $(MAKE) CFLAGS="$(CFLAGS) -fPIC" ../mzdyn.o
        $(MAKE) ../starter

 dynlib3m:
- -       $(MAKE) ../mzdyn3m.o
+       $(MAKE) CFLAGS="$(CFLAGS) -fPIC" ../mzdyn3m.o

 dynexample:
- -       $(MAKE) ../dynexmpl.so
+       $(MAKE) CFLAGS="$(CFLAGS) -fPIC" ../dynexmpl.so

 HEADERS = $(builddir)/../mzconfig.h \
           $(srcdir)/../include/scheme.h $(srcdir)/../src/schemef.h \
diff -ur plt.orig/src/mzscheme/gc/Makefile.in plt/src/mzscheme/gc/Makefile.in
- --- plt.orig/src/mzscheme/gc/Makefile.in        2005-05-27 19:11:11.000000000
- -0400
+++ plt/src/mzscheme/gc/Makefile.in     2006-07-09 12:53:34.000000000 -0400
@@ -10,7 +10,7 @@
 #               and runs some tests of collector and cords.  Does not add
cords or
 #       c++ interface to gc.a
 # cord/de - builds dumb editor based on cords.
- -ABI_FLAG=
+ABI_FLAG= -fPIC
 CC= @CC@ $(ABI_FLAG)
 CXX= @CXX@ $(ABI_FLAG)
 AS= @AS@ $(ABI_FLAG)
diff -ur plt.orig/src/mzscheme/gc2/Makefile.in plt/src/mzscheme/gc2/Makefile.in
- --- plt.orig/src/mzscheme/gc2/Makefile.in       2006-06-11 09:02:10.000000000
- -0400
+++ plt/src/mzscheme/gc2/Makefile.in    2006-07-09 12:53:34.000000000 -0400
@@ -13,7 +13,7 @@
 ARFLAGS = @ARFLAGS@
 RANLIB = @RANLIB@

- -CPPFLAGS = @PREFLAGS@ @OPTIONS@ @GC2OPTIONS@ @MZOPTIONS@ -I$(builddir)/..
- -I$(srcdir)/../include
+CPPFLAGS = @PREFLAGS@ -fPIC @OPTIONS@ @GC2OPTIONS@ @MZOPTIONS@
- -I$(builddir)/.. -I$(srcdir)/../include
 CFLAGS = @CFLAGS@ $(CPPFLAGS) @COMPFLAGS@ @PROFFLAGS@
 LIBS = @LIBS@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.5 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGo3kZp/VmCx0OL2wRAg/JAKCgP5LtYz5FCMse9GRMWwdM47w+BQCgg8Sr
OiVQKDdNW5GpH0c+MIhbWLM=
=QWt9
-----END PGP SIGNATURE-----


Posted on the users mailing list.