define FIND_FILES
cd $(ROOT)/ && find -mount \
-not -path './tools*' -not -path './tmp*' -not -path './usr/src*' \
- -not -path './dev*' -not -path './proc*' -not -path './install*'
+ -not -path './dev*' -not -path './proc*' -not -path './install*' | sort
endef
# This is common starting logic for builds.
# Fix installation on partial rebuild, so modules install where they should
# and not everytime on the last compiled kernel
if [ -f $(DIR_SRC)/linux-$(KVER) ]; then \
- if [ "$(SMP)" = "" ]; then \
+ if [ "$(PAE)" = "1" ]; then \
+ cd $(DIR_SRC)/linux-$(KVER) && \
+ sed -i -e 's+^EXTRAVERSION.*$$+EXTRAVERSION\ =\ $(word 4,$(subst ., .,$(KVER)))-ipfire-pae+' Makefile; \
+ elif [ "$(XEN)" = "" ]; then \
cd $(DIR_SRC)/linux-$(KVER) && \
sed -i -e 's+^EXTRAVERSION.*$$+EXTRAVERSION\ =\ $(word 4,$(subst ., .,$(KVER)))-ipfire+' Makefile; \
else \
cd $(DIR_SRC)/linux-$(KVER) && \
- sed -i -e 's+^EXTRAVERSION.*$$+EXTRAVERSION\ =\ $(word 4,$(subst ., .,$(KVER)))-ipfire-smp+' Makefile; \
+ sed -i -e 's+^EXTRAVERSION.*$$+EXTRAVERSION\ =\ $(word 4,$(subst ., .,$(KVER)))-ipfire-xen+' Makefile; \
fi; \
fi
endef
define POSTBUILD
@echo "Install done; saving file list to $(TARGET) ..."
@$(FIND_FILES) > $(DIR_SRC)/lsalrnew
- @diff $(DIR_SRC)/lsalr $(DIR_SRC)/lsalrnew | grep '^> ' | sed 's/^> //' | sort > $(TARGET)_diff
+ @diff $(DIR_SRC)/lsalr $(DIR_SRC)/lsalrnew | grep '^> ' | sed 's/^> //' > $(TARGET)_diff
@cp -f $(DIR_SRC)/lsalrnew $(DIR_SRC)/lsalr
@rm -f $(DIR_SRC)/lsalrnew
sed -i -e 's+.\/++' $(TARGET)_diff
# $(TARGET)_rootfile : ROOTFILE with KVER replacement
# $(TARGET) : log result with {commented|include|added} files
if [ -s "$(TARGET)_diff" ]; then \
- if [ "$(PASS)" = "SMP" ]; then LFS_SCRIPT=$(firstword $(MAKEFILE_LIST))-smp; \
+ if [ "$(PAE)" = "1" ]; then LFS_SCRIPT=$(firstword $(MAKEFILE_LIST))-pae; \
+ elif [ "$(XEN)" = "1" ]; then LFS_SCRIPT=$(firstword $(MAKEFILE_LIST))-xen; \
else LFS_SCRIPT=$(firstword $(MAKEFILE_LIST)); \
fi; \
echo $(LFS_SCRIPT); \
sed -e 's/KVER/$(KVER)/g' -i /install/packages/package/ROOTFILES
chmod 755 /install/packages/package/{{,un}install,update}.sh
cd / && tar cf /install/packages/package/files.tmp --files-from=/install/packages/package/ROOTFILES --exclude='#*' \
- --preserve --numeric-owner
+ -p --numeric-owner
# Double tar to remove double files
tar xf /install/packages/package/files.tmp -C /install/packages/package/tmp/ \
- --preserve --numeric-owner
+ -p --numeric-owner
rm -f /install/packages/package/files.tmp
- cd /install/packages/package/tmp/ && tar -c --preserve --numeric-owner -f /install/packages/package/files *
+ cd /install/packages/package/tmp/ && tar -c -p --numeric-owner -f /install/packages/package/files *
rm -r /install/packages/package/tmp
-cat /install/packages/package/ROOTFILES | grep -v "#" > /install/packages/package/ROOTFILES.tmp
mv /install/packages/package/ROOTFILES.tmp /install/packages/package/ROOTFILES