commit 16ff016b7bfd1abe5f93b1d65fdd0827ebe65c6f Author: Jay Larson Date: Tue Sep 6 09:08:11 2016 -0500 First check in. diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..c65b8c1 --- /dev/null +++ b/Makefile @@ -0,0 +1,86 @@ +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation here: +# (http://www.gnu.org/licenses/gpl-2.0.html) +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +DEPENDS = attr +ARCH = x86_64 +URL = http://savannah.nongnu.org/projects/acl +DESC = Commands for Manipulating POSIX Access Control Lists +SNAPVER = sr0 + +ARCHIVE := $(PWD)/SRC/$(shell ls SRC|egrep '(bz2|gz|tar|xz)$$'|tail -1) +TYPE := $(shell file -ib $(ARCHIVE)|cut -d';' -f1|tr -d '\n') +SRCDIR := $(shell tar -tf $(ARCHIVE)|head -1|sed 's/\/.*//') +PATCHDIR := $(PWD)/SRC/patches +VERSION := $(shell echo $(SRCDIR)|egrep -o '\-[0-9].*'|sed 's/^-//')$(SNAPVER) + +MAKE = make +MAKEINST = make install install-dev install-lib +SNAPHACKS = +#SNAPHACKS = if [ -h $(ROOT)/lib/libacl.a ]; then \ +# rm -v $(ROOT)/lib/libacl.a; fi + +include /usr/share/snap/Makefile.snaplinux + +$(SRCDIR): $(ARCHIVE) + @if [ '$(TYPE)' == 'application/x-bzip2' ]; then \ + tar -jxf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-gzip' ]; then \ + tar -zxf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-tar' ]; then \ + tar -xf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-xz' ]; then \ + tar -xf $(ARCHIVE); \ + else \ + echo 'Unable to determine archive type'; \ + exit 1; \ + fi + +$(SRCDIR)/config.log: $(SRCDIR) + @if [ -f $(PATCHDIR)/*.patch ]; then \ + cd $(SRCDIR) && cat $(PATCHDIR)/*.patch|patch --verbose -Np1; \ + fi + @cd $(SRCDIR); \ + ./configure \ + --prefix=/usr \ + --bindir=/bin \ + --libdir=/lib \ + --libexecdir=/usr/lib \ + --disable-static \ + --build=x86_64-snap-linux-gnu \ + --host=x86_64-snap-linux-gnu \ + --target=x86_64-snap-linux-gnu + +$(SRCDIR)/chacl/.libs/chacl: $(SRCDIR)/config.log + @cd $(SRCDIR); \ + $(MAKE) + +$(ROOT): $(SRCDIR)/chacl/.libs/chacl + @if [ -d $(ROOT) ]; then \ + touch $(ROOT); \ + else \ + mkdir -v $(ROOT); \ + fi + + @cd $(SRCDIR); \ + $(MAKEINST) DESTDIR=$(ROOT) + + @$(SNAPHACKS) + +test: $(ROOT) + @cd $(SRCDIR); \ + make tests + +clean: + @rm -rvf $(ROOT) \ + $(SNAPINFO) \ + $(MANIFEST) \ + $(FILES) \ + $(SRCDIR) + diff --git a/SNAP/README b/SNAP/README new file mode 100644 index 0000000..19a3ff1 --- /dev/null +++ b/SNAP/README @@ -0,0 +1,3 @@ +This is the directory where the manifest, snapinfo, and files.tar.gz +files will be created. It is also where the usher file should be +placed if it is required by the package. diff --git a/SRC/acl-2.2.52.src.tar.gz b/SRC/acl-2.2.52.src.tar.gz new file mode 100644 index 0000000..84d263b Binary files /dev/null and b/SRC/acl-2.2.52.src.tar.gz differ diff --git a/SRC/acl-2.2.52.src.tar.gz.sig b/SRC/acl-2.2.52.src.tar.gz.sig new file mode 100644 index 0000000..f9d1b9e Binary files /dev/null and b/SRC/acl-2.2.52.src.tar.gz.sig differ diff --git a/SRC/patches/01_test_escape_fix.patch b/SRC/patches/01_test_escape_fix.patch new file mode 100644 index 0000000..d851141 --- /dev/null +++ b/SRC/patches/01_test_escape_fix.patch @@ -0,0 +1,59 @@ +diff -purN a/test/cp.test b/test/cp.test +--- a/test/cp.test 2013-05-18 23:26:11.000000000 -0500 ++++ b/test/cp.test 2016-09-05 18:17:50.164000000 -0500 +@@ -9,7 +9,7 @@ The cp utility should only copy ACLs if + > -rw-rw-r--+ + + $ cp f g +- $ ls -l g | awk -- '{ print $1 }' | sed 's/\.$//g' ++ $ ls -l g | awk -- '{ print $1 }' | sed 's/\\.$//g' + > -rw-r--r-- + + $ rm g +diff -purN a/test/misc.test b/test/misc.test +--- a/test/misc.test 2013-05-18 23:28:12.000000000 -0500 ++++ b/test/misc.test 2016-09-05 18:18:19.348000000 -0500 +@@ -254,7 +254,7 @@ Add some users and groups + Symlink in directory with default ACL? + + $ ln -s d d/l +- $ ls -dl d/l | awk '{print $1}' | sed 's/\.$//g' ++ $ ls -dl d/l | awk '{print $1}' | sed 's/\\.$//g' + > lrwxrwxrwx + + $ ls -dl -L d/l | awk '{print $1}' +@@ -343,7 +343,7 @@ Remove the default ACL + Reset to base entries + + $ setfacl -b d +- $ ls -dl d | awk '{print $1}' | sed 's/\.$//g' ++ $ ls -dl d | awk '{print $1}' | sed 's/\\.$//g' + > drwxr-x--- + + $ getfacl --omit-header d +@@ -355,7 +355,7 @@ Reset to base entries + Now, chmod should change the group_obj entry + + $ chmod 775 d +- $ ls -dl d | awk '{print $1}' | sed 's/\.$//g' ++ $ ls -dl d | awk '{print $1}' | sed 's/\\.$//g' + > drwxrwxr-x + + $ getfacl --omit-header d +diff -purN a/test/sbits-restore.test b/test/sbits-restore.test +--- a/test/sbits-restore.test 2013-05-18 21:38:59.000000000 -0500 ++++ b/test/sbits-restore.test 2016-09-05 18:17:35.860000000 -0500 +@@ -13,10 +13,10 @@ Ensure setting of SUID/SGID/sticky via - + $ touch d/g + $ touch d/u + $ setfacl --restore d.acl +- $ ls -dl d | awk '{print $1}' | sed 's/\.$//g' ++ $ ls -dl d | awk '{print $1}' | sed 's/\\.$//g' + > drwxr-xr-t +- $ ls -dl d/u | awk '{print $1}' | sed 's/\.$//g' ++ $ ls -dl d/u | awk '{print $1}' | sed 's/\\.$//g' + > -rwSr--r-- +- $ ls -dl d/g | awk '{print $1}' | sed 's/\.$//g' ++ $ ls -dl d/g | awk '{print $1}' | sed 's/\\.$//g' + > -rw-r-Sr-- + $ rm -Rf d diff --git a/SRC/patches/README b/SRC/patches/README new file mode 100644 index 0000000..253cdcd --- /dev/null +++ b/SRC/patches/README @@ -0,0 +1,2 @@ +Place any patch files here and preface each with a number indicating +the order of execution. Patch files are expected to use a .patch extension.