mirror of
https://github.com/samba-team/samba.git
synced 2025-01-12 09:18:10 +03:00
r14471: Convert installheader script to perl
This commit is contained in:
parent
f7312dab3b
commit
c6a478a1af
@ -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)
|
||||
|
44
source/script/installheader.pl
Executable file
44
source/script/installheader.pl
Executable file
@ -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;
|
@ -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
|
Loading…
Reference in New Issue
Block a user