]> git.ipfire.org Git - ipfire-3.x.git/commitdiff
Added a new archive files collector script.
authorMichael Tremer <michael.tremer@ipfire.org>
Sat, 27 Dec 2008 00:47:19 +0000 (01:47 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Sat, 27 Dec 2008 00:47:19 +0000 (01:47 +0100)
lfs/images
src/scripts/archive.files [new file with mode: 0755]

index ff4cb2aae21a94673988c58e93e015ac973100f9..d12eba2f7b57e2fd48c68adddf1bb17f2935498f 100644 (file)
@@ -62,8 +62,8 @@ ifeq "$(PASS)" "$(THISAPP)"
        @rm -f $(IMAGES_DIR)/$(SNAME)-$(VERSION).img
        mkdir -pv $(CDROM_DIR)/tmp
 
-       find $(ROOTFILES) -maxdepth 1 -type f | xargs cat | \
-               grep -v ^# | sed -e "s/KVER/$(KVER)/g" | sort | uniq > $(CDROM_DIR)/archive.files
+       TARGET=$(TARGET) KVER=$(KVER) \
+               $(DIR_SOURCE)/scripts/archive.files $(ROOTFILES) > $(CDROM_DIR)/archive.files
 
        cd / && cpio -pd $(CDROM_DIR)/tmp < $(CDROM_DIR)/archive.files \
                2>$(CDROM_DIR)/archive.errors
diff --git a/src/scripts/archive.files b/src/scripts/archive.files
new file mode 100755 (executable)
index 0000000..9721ccc
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/bash
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007, 2008 Michael Tremer & Christian Schmidt                 #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# 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.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+FILELIST=
+
+for dir in $@; do
+       for exclude in ${dir}/${TARGET}/*; do
+               EXCLUDE="$EXCLUDE $exclude"
+       done
+
+       FILELIST="${FILELIST} ${EXCLUDE}"
+
+       for include in ${dir}/*; do
+               [ -d ${include} ] && continue
+               IN=true
+               for exclude in ${EXCLUDE}; do
+                       if [ "$(basename ${exclude})" = "$(basename ${include})" ]; then
+                               IN=false
+                               break
+                       fi
+               done
+               ${IN} && FILELIST="${FILELIST} ${include}"
+       done
+done
+
+cat ${FILELIST} | grep -v ^# | sort | uniq | sed "s/KVER/${KVER}/g"