develooper Front page | perl.perl6.internals | Postings from August 2002

[perl #16818] [PATCH] Build cleanup

Thread Next
From:
Andy Dougherty
Date:
August 28, 2002 09:40
Subject:
[perl #16818] [PATCH] Build cleanup
Message ID:
rt-16818-35908.8.50226317513219@bugs6.perl.org
# New Ticket Created by  Andy Dougherty 
# Please include the string:  [perl #16818]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=16818 >


I discovered 'make languages' yesterday.  The enclosed patch cleans up a
lot of small nits I found in the build process.  In a number of cases, the
Makefiles were running perl scripts as
	./script
rather than as
	$(PERL) script

A few other places called a plain 'perl' instead of $(PERL).

Second, Configure.pl was putting the wrong flags in to build a shared
library.  (Or, more precisely, it was apparently unconditionally using
flags that work for GNU binutils.)  I have replaced ld_shared by what I
suspect is the appropriate perl5 Config variable.  I left ld_shared_flags
empty because I don't know what is supposed to go there, but the value
Configure.pl used to use is definitely not right for Solaris's linker.

diff -r -u parrot-orig/config/gen/makefiles/jako.in parrot-andy/config/gen/makefiles/jako.in
--- parrot-orig/config/gen/makefiles/jako.in	Fri May 24 02:23:58 2002
+++ parrot-andy/config/gen/makefiles/jako.in	Tue Aug 27 15:36:29 2002
@@ -4,14 +4,14 @@
 # $Id: jako.in,v 1.1 2002/05/24 06:23:58 brentdax Exp $
 #
 
+PERL = ${perl}
+RM_F = ${rm_f}
+
 DIR=languages/jako
 TOOL_DIR=../..
-ASM=perl -I ../../lib ../../assemble.pl
-JAKOC=./jakoc
+ASM=$(PERL) -I ../../lib ../../assemble.pl
+JAKOC=$(PERL) jakoc
 INTERP=../../${test_prog}
-
-PERL = ${perl}
-RM_F = ${rm_f}
 
 .SUFFIXES: .jako .pasm .pbc
 
diff -r -u parrot-orig/config/gen/makefiles/miniperl.in parrot-andy/config/gen/makefiles/miniperl.in
--- parrot-orig/config/gen/makefiles/miniperl.in	Fri May 24 02:23:58 2002
+++ parrot-andy/config/gen/makefiles/miniperl.in	Wed Aug 28 11:36:34 2002
@@ -4,10 +4,11 @@
 # $Id: miniperl.in,v 1.1 2002/05/24 06:23:58 brentdax Exp $
 #
 
+PERL=${perl}
 DIR=languages/miniperl
 TOOL_DIR=../..
 ASM=./assemble.pl
-MINIPERLC=./miniperlc
+MINIPERLC=$(PERL) miniperlc
 INTERP=./${test_prog}
 
 #
@@ -19,7 +20,7 @@
 
 foo: foo.mpl miniperlc
 	$(MINIPERLC) foo.mpl > foo.pasm
-	cd $(TOOL_DIR); perl $(ASM) $(DIR)/foo.pasm > $(DIR)/foo.pbc
+	cd $(TOOL_DIR); $(PERL) $(ASM) $(DIR)/foo.pasm > $(DIR)/foo.pbc
 	cd $(TOOL_DIR); $(INTERP) $(DIR)/foo.pbc
 	cat foo.pasm
 
@@ -68,7 +69,7 @@
 	@make all
 
 test:
-	t/harness
+	$(PERL) t/harness
 #	cd $(TOOL_DIR); $(INTERP) $(DIR)/test.pbc
 #	cd $(TOOL_DIR); $(INTERP) $(DIR)/and.pbc
 #	cd $(TOOL_DIR); $(INTERP) $(DIR)/foo.pbc
diff -r -u parrot-orig/config/gen/makefiles/scheme.in parrot-andy/config/gen/makefiles/scheme.in
--- parrot-orig/config/gen/makefiles/scheme.in	Fri May 24 02:23:58 2002
+++ parrot-andy/config/gen/makefiles/scheme.in	Tue Aug 27 15:30:21 2002
@@ -4,15 +4,15 @@
 # $Id: scheme.in,v 1.1 2002/05/24 06:23:58 brentdax Exp $
 #
 
+PERL = ${perl}
+RM_F = ${rm_f}
+
 DIR=languages/scheme
 TOOL_DIR=../..
-ASM=./assemble.pl
-SCHEMEC=./schemec
+ASM= $(PERL) assemble.pl
+SCHEMEC=$(PERL) schemec
 INTERP=./${test_prog}
 
-PERL = ${perl}
-RM_F = ${rm_f}
-
 #
 # Default target:
 #
@@ -71,7 +71,7 @@
 	@$(MAKE) all
 
 test:
-	t/harness
+	$(PERL) t/harness
 #	cd $(TOOL_DIR); $(INTERP) $(DIR)/test.pbc
 #	cd $(TOOL_DIR); $(INTERP) $(DIR)/and.pbc
 #	cd $(TOOL_DIR); $(INTERP) $(DIR)/foo.pbc
diff -r -u parrot-orig/config/init/data.pl parrot-andy/config/init/data.pl
--- parrot-orig/config/init/data.pl	Tue Aug 27 07:57:44 2002
+++ parrot-andy/config/init/data.pl	Wed Aug 28 11:29:58 2002
@@ -39,8 +39,9 @@
     
     ld_out        => '-o ',               # ld output file
     ld_debug      => '',                  # include debug info in executable
-    ld_shared     => '-shared',
-    ld_shared_flags=> '-Wl,-soname,libparrot$(SO)',
+    ld_shared     => $Config{lddlflags},
+    ld_shared_flags=> '',	# What is this, exactly?  For GNU ld, it was
+    				# '-Wl,-soname,libparrot$(SO)'
 
     # should we have a dependancy upon arc to generate .a's?
     blib_lib_libparrot_a => 'blib/lib/libparrot$(A)',
diff -r -u parrot-orig/languages/scheme/Scheme/Test.pm parrot-andy/languages/scheme/Scheme/Test.pm
--- parrot-orig/languages/scheme/Scheme/Test.pm	Wed Jan 30 13:02:32 2002
+++ parrot-andy/languages/scheme/Scheme/Test.pm	Tue Aug 27 15:57:31 2002
@@ -59,7 +59,7 @@
     print SCHEME $assembly; # JMG
     close SCHEME; # JMG
 
-    _run_command("./schemec $scheme_f >$as_f"); # JMG
+    _run_command("$PConfig{perl} schemec $scheme_f >$as_f"); # JMG
     _run_command("(cd ../.. ; $PConfig{perl} assemble.pl languages/scheme/$as_f --output languages/scheme/$by_f)"); # JMG
     _run_command( "(cd ../.. ; ./$PConfig{test_prog} languages/scheme/$by_f)", 'STDOUT' => $out_f, 'STDERR' => $out_f); # JMG
 

-- 
    Andy Dougherty		doughera@lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042




Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About