From 089584d3577b72ed3fb405a32f35469ca7b939ab Mon Sep 17 00:00:00 2001 From: Moritz Lenz Date: Mon, 20 Aug 2012 22:33:40 +0200 Subject: adapt shebang line on installing --- skel/tools/build/Makefile.in | 7 ++----- skel/tools/build/bin-install.pl | 28 ++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 skel/tools/build/bin-install.pl (limited to 'skel') diff --git a/skel/tools/build/Makefile.in b/skel/tools/build/Makefile.in index 92d157f..a4de729 100644 --- a/skel/tools/build/Makefile.in +++ b/skel/tools/build/Makefile.in @@ -97,12 +97,9 @@ rakudo-install: rakudo modules-install: rakudo @echo "== Installing 'ufo'" - $(CP) modules/ufo/bin/ufo $(DESTDIR)$(PARROT_BIN_DIR)/ufo - $(CHMOD) 755 $(DESTDIR)$(PARROT_BIN_DIR)/ufo $(PERL) tools/build/module-install.pl $(DESTDIR)$(PARROT_BIN_DIR)/$(PERL6_EXE) $(DESTDIR)$(PERL6_LANG_DIR)/lib $(MODULES) - @echo "Installing 'panda'" - $(CP) modules/panda/bin/panda $(DESTDIR)$(PARROT_BIN_DIR)/panda - $(CHMOD) 755 $(DESTDIR)$(PARROT_BIN_DIR)/panda + @echo "== Installing binaries" + $(PERL) tools/build/bin-install.pl $(DESTDIR)$(PARROT_BIN_DIR)/$(PERL6_EXE) $(DESTDIR)$(PARROT_BIN_DIR) modules/ufo/bin/ufo modules/panda/bin/panda install: rakudo-install modules-install diff --git a/skel/tools/build/bin-install.pl b/skel/tools/build/bin-install.pl new file mode 100644 index 0000000..1c71cea --- /dev/null +++ b/skel/tools/build/bin-install.pl @@ -0,0 +1,28 @@ +#! perl + +use strict; +use warnings; +use File::Spec; + +my ($p6bin, $dest, @files) = @ARGV; +die "Usage: $0 " + unless $p6bin && $dest; + +for my $filename (@files) { + open my $IN, '<', $filename + or die "Cannot read file '$filename' for installing it: $!"; + my $basename = (File::Spec->splitpath($filename))[2]; + open my $OUT, '>', "$dest/$basename" + or die "Cannot write file '$dest/$basename' for installing it: $!"; + while (<$IN>) { + if ($. == 1 && /^#!/) { + print { $OUT } "#!$p6bin\n"; + } + else { + print { $OUT } $_; + } + } + close $OUT or die "Error while closing file '$dest/$basename': $!"; + close $IN; + chmod 0755, "$dest/$basename"; +} -- cgit v1.1