summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2006-03-16 13:04:28 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:57:30 -0500
commit3bb28c83e277bda9233de4cca71f367ce00be5c3 (patch)
tree6ee7d8b6c5d12ada27366452b99d250a10353039
parent4f1c8daa36a7a0372c5fd9eab51f3c16ee81c49d (diff)
downloadsamba-3bb28c83e277bda9233de4cca71f367ce00be5c3.tar.gz
samba-3bb28c83e277bda9233de4cca71f367ce00be5c3.tar.bz2
samba-3bb28c83e277bda9233de4cca71f367ce00be5c3.zip
r14471: Convert installheader script to perl
(This used to be commit c6a478a1af38cad5622d3c3c53a7a99f9770b169)
-rw-r--r--source4/main.mk2
-rwxr-xr-xsource4/script/installheader.pl44
-rwxr-xr-xsource4/script/installheader.sh26
3 files changed, 45 insertions, 27 deletions
diff --git a/source4/main.mk b/source4/main.mk
index eceb90342a..429b326f8b 100644
--- a/source4/main.mk
+++ b/source4/main.mk
@@ -128,7 +128,7 @@ installlib: libraries installdirs
@$(SHELL) $(srcdir)/script/installlib.sh $(DESTDIR)$(LIBDIR) $(STATIC_LIBS)
installheader: headers installdirs
- @$(SHELL) $(srcdir)/script/installheader.sh $(DESTDIR)$(INCLUDEDIR) $(PUBLIC_HEADERS) $(DEFAULT_HEADERS)
+ @$(PERL) $(srcdir)/script/installheader.pl $(DESTDIR)$(INCLUDEDIR) $(PUBLIC_HEADERS) $(DEFAULT_HEADERS)
installdat: installdirs
@$(SHELL) $(srcdir)/script/installdat.sh $(DESTDIR)$(DATADIR) $(srcdir)
diff --git a/source4/script/installheader.pl b/source4/script/installheader.pl
new file mode 100755
index 0000000000..1af05f3fea
--- /dev/null
+++ b/source4/script/installheader.pl
@@ -0,0 +1,44 @@
+#!/usr/bin/perl
+use strict;
+use File::Basename;
+
+my $includedir = shift;
+
+sub install_header($$)
+{
+ my ($src,$dst) = @_;
+
+ open(IN, "<$src");
+ open(OUT, ">$dst");
+
+ while (<IN>) {
+ print OUT $_;
+ }
+
+ close(OUT);
+ close(IN);
+}
+
+foreach my $p (@ARGV)
+{
+ my $p2 = basename($p);
+ print "Installing $p as $includedir/$p2\n";
+
+ if ( -f "$includedir/$p2" ) {
+ unlink("$includedir/$p2.old");
+ rename("$includedir/$p2", "$includedir/$p2.old");
+ }
+
+ install_header($p,"$includedir/$p2");
+}
+
+print <<EOF;
+======================================================================
+The headers are installed. You may restore the old headers (if there
+were any) using the command "make revert". You may uninstall the headers
+using the command "make uninstallheader" or "make uninstall" to uninstall
+binaries, man pages and shell scripts.
+======================================================================
+EOF
+
+exit 0;
diff --git a/source4/script/installheader.sh b/source4/script/installheader.sh
deleted file mode 100755
index 9aed5ed1c3..0000000000
--- a/source4/script/installheader.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/sh
-
-INCLUDEDIR=$1
-shift
-
-for p in $*; do
- p2=`basename $p`
- echo Installing $p as $INCLUDEDIR/$p2
- if [ -f $INCLUDEDIR/$p2 ]; then
- rm -f $INCLUDEDIR/$p2.old
- mv $INCLUDEDIR/$p2 $INCLUDEDIR/$p2.old
- fi
- cp $p $INCLUDEDIR/
-
-done
-
-cat << EOF
-======================================================================
-The headers are installed. You may restore the old headers (if there
-were any) using the command "make revert". You may uninstall the headers
-using the command "make uninstallheader" or "make uninstall" to uninstall
-binaries, man pages and shell scripts.
-======================================================================
-EOF
-
-exit 0