diff options
| -rw-r--r-- | Makefile.am | 1 | ||||
| -rw-r--r-- | pkg/solaris/pkginfo.in | 2 | ||||
| -rwxr-xr-x | pkg/solaris/solpkg | 10 |
3 files changed, 9 insertions, 4 deletions
diff --git a/Makefile.am b/Makefile.am index b6e5f2ec..8e2de783 100644 --- a/Makefile.am +++ b/Makefile.am | |||
| @@ -46,6 +46,7 @@ solpkg: | |||
| 46 | $(MAKE) all | 46 | $(MAKE) all |
| 47 | $(MAKE) DESTDIR=$$PWD/$(BUILDDIR) install | 47 | $(MAKE) DESTDIR=$$PWD/$(BUILDDIR) install |
| 48 | $(INSTALL) pkg/solaris/pkginfo $(BUILDDIR) | 48 | $(INSTALL) pkg/solaris/pkginfo $(BUILDDIR) |
| 49 | $(INSTALL) pkg/solaris/preinstall $(BUILDDIR) | ||
| 49 | cd $(BUILDDIR) && $(PERL) ../$(PKGSCRIPT) ../$(PACKDIR) | 50 | cd $(BUILDDIR) && $(PERL) ../$(PKGSCRIPT) ../$(PACKDIR) |
| 50 | 51 | ||
| 51 | THANKS: THANKS.in | 52 | THANKS: THANKS.in |
diff --git a/pkg/solaris/pkginfo.in b/pkg/solaris/pkginfo.in index c9dcced0..3bed3464 100644 --- a/pkg/solaris/pkginfo.in +++ b/pkg/solaris/pkginfo.in | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | PKG="NAGplugin" | 1 | PKG="NGOSplugin" |
| 2 | NAME="nagios-plugins" | 2 | NAME="nagios-plugins" |
| 3 | DESC="Nagios network monitoring plugins" | 3 | DESC="Nagios network monitoring plugins" |
| 4 | ARCH="@PKG_ARCH@" | 4 | ARCH="@PKG_ARCH@" |
diff --git a/pkg/solaris/solpkg b/pkg/solaris/solpkg index 41d8e177..6307bcd7 100755 --- a/pkg/solaris/solpkg +++ b/pkg/solaris/solpkg | |||
| @@ -8,6 +8,7 @@ $pkgmk = "/usr/bin/pkgmk"; | |||
| 8 | $pkgtrans = "/usr/bin/pkgtrans"; | 8 | $pkgtrans = "/usr/bin/pkgtrans"; |
| 9 | $prototype = "prototype"; | 9 | $prototype = "prototype"; |
| 10 | $pkginfo = "pkginfo"; | 10 | $pkginfo = "pkginfo"; |
| 11 | $preinstall = "preinstall"; | ||
| 11 | $egrep = "/usr/bin/egrep"; | 12 | $egrep = "/usr/bin/egrep"; |
| 12 | 13 | ||
| 13 | # Sanity check | 14 | # Sanity check |
| @@ -24,17 +25,19 @@ open (PREPROTO,"$find . -print |$egrep -v \"^\.(/usr(/local)?|/opt)?\$\" | $pkgp | |||
| 24 | open (PROTO,">$prototype") || | 25 | open (PROTO,">$prototype") || |
| 25 | die "Unable to write file prototype ($!)\n"; | 26 | die "Unable to write file prototype ($!)\n"; |
| 26 | print PROTO "i pkginfo=./$pkginfo\n"; | 27 | print PROTO "i pkginfo=./$pkginfo\n"; |
| 28 | print PROTO "i preinstall=./$preinstall\n"; | ||
| 27 | while (<PREPROTO>) { | 29 | while (<PREPROTO>) { |
| 28 | # Read in the prototype information | 30 | # Read in the prototype information |
| 29 | chomp; | 31 | chomp; |
| 30 | $thisline = $_; | 32 | $thisline = $_; |
| 31 | if ($thisline =~ " prototype " | 33 | if ($thisline =~ " prototype " |
| 32 | or $thisline =~ " pkginfo ") { | 34 | or $thisline =~ " pkginfo " |
| 35 | or $thisline =~ " preinstall ") { | ||
| 33 | # Don't do anything as they aren't important | 36 | # Don't do anything as they aren't important |
| 34 | } elsif ($thisline =~ "^[fd] ") { | 37 | } elsif ($thisline =~ "^[fd] ") { |
| 35 | # Change the ownership of files and directories | 38 | # Change the ownership of files and directories |
| 36 | ($dir, $none, $file, $mode, $user, $group) = split / /,$thisline; | 39 | ($dir, $none, $file, $mode, $user, $group) = split / /,$thisline; |
| 37 | print PROTO "$dir $none $file $mode bin bin\n"; | 40 | print PROTO "$dir $none $file $mode $user bin\n"; |
| 38 | } else { | 41 | } else { |
| 39 | # Symlinks and other stuff should be printed also | 42 | # Symlinks and other stuff should be printed also |
| 40 | print PROTO "$thisline\n"; | 43 | print PROTO "$thisline\n"; |
| @@ -58,6 +61,7 @@ while (<PKGINFO>) { | |||
| 58 | $thisline = $_; | 61 | $thisline = $_; |
| 59 | ($var,$value) = split /=/,$thisline; | 62 | ($var,$value) = split /=/,$thisline; |
| 60 | if ("$var" eq "NAME" | 63 | if ("$var" eq "NAME" |
| 64 | or "$var" eq "PKG" | ||
| 61 | or "$var" eq "VERSION" | 65 | or "$var" eq "VERSION" |
| 62 | or "$var" eq "ARCH") { | 66 | or "$var" eq "ARCH") { |
| 63 | $tmp = lc($var); | 67 | $tmp = lc($var); |
| @@ -77,5 +81,5 @@ $packagename = "$name-$version-$os-$arch-local"; | |||
| 77 | 81 | ||
| 78 | print "Building package\n"; | 82 | print "Building package\n"; |
| 79 | system ("$pkgmk -o -r `pwd` -d $pkgdevice"); | 83 | system ("$pkgmk -o -r `pwd` -d $pkgdevice"); |
| 80 | system ("(cd $pkgdevice && $pkgtrans -s `pwd` ../$packagename)"); | 84 | system ("(cd $pkgdevice && $pkgtrans -s `pwd` ../$packagename $pkg)"); |
| 81 | print "Done. ($packagename)\n"; | 85 | print "Done. ($packagename)\n"; |
