#!/bin/bash
###############################################################################
#                                                                             #
# IPFire.org - A linux based firewall                                         #
# Copyright (C) 2007-2023  IPFire Team  info@ipfire.org                       #
#                                                                             #
# 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/>.       #
#                                                                             #
###############################################################################

grep -r "^etc/init.d//*" ./config/rootfiles/ >/dev/null 2>&1
if [ "${?}" == "0" ]; then
	echo "Error! 'etc/init.d/...' in rootfiles files found!"
	grep -r "^etc/init.d//*" ./config/rootfiles/
	echo "Change this to 'etc/rc.d/init.d/...' !"
fi

grep -r "^var/run//*" ./config/rootfiles/ >/dev/null 2>&1
if [ "${?}" == "0" ]; then
	echo "Error! 'var/run/...' in rootfiles files found!"
	grep -r "^var/run//*" ./config/rootfiles/
	echo "Comment this and create it at initskript if needed !"
fi

grep -r 'x86_64' ./config/rootfiles/ --exclude gcc --exclude rust-libc \
    --exclude rust-ppv-lite86 --exclude rust-memchr --exclude-dir aarch64 --exclude-dir riscv64 --exclude-dir x86_64 \
    --exclude update.sh --exclude qemu --exclude cmake --exclude xfsprogs \
    --exclude-dir oldcore --exclude-dir x86_64 >/dev/null 2>&1
if [ "${?}" == "0" ]; then
	echo "Error! '/x86_64' in rootfiles files found!"
	grep -r 'x86_64' ./config/rootfiles/ --exclude gcc --exclude rust-libc \
    --exclude rust-ppv-lite86 --exclude rust-memchr --exclude-dir aarch64 --exclude-dir riscv64 --exclude-dir x86_64  \
    --exclude update.sh  --exclude qemu --exclude cmake --exclude xfsprogs \
    --exclude-dir oldcore --exclude-dir x86_64
	echo "Replace by xxxMACHINExxx !"
fi

grep -r 'aarch64' ./config/rootfiles/ --exclude gcc --exclude rust-libc --exclude gdb --exclude liburcu --exclude gdb \
     --exclude qemu --exclude liburcu --exclude abseil-cpp \
     --exclude-dir oldcore --exclude-dir aarch64 --exclude-dir riscv64 --exclude-dir x86_64 >/dev/null 2>&1
if [ "${?}" == "0" ]; then
	echo "Error! 'aarch64' in rootfiles files found!"
	grep -r 'aarch64' ./config/rootfiles/ --exclude gcc --exclude rust-libc --exclude gdb \
    --exclude qemu --exclude liburcu --exclude abseil-cpp \
    --exclude-dir oldcore --exclude-dir aarch64 --exclude-dir riscv64 --exclude-dir x86_64
	echo "Replace by xxxMACHINExxx !"
fi

grep -r 'riscv64' ./config/rootfiles/ --exclude gcc --exclude rust-libc --exclude gdb --exclude liburcu --exclude go --exclude qemu \
     --exclude-dir oldcore --exclude-dir aarch64 --exclude-dir riscv64 --exclude-dir x86_64  >/dev/null 2>&1
if [ "${?}" == "0" ]; then
	echo "Error! 'riscv64' in rootfiles files found!"
	grep -r 'riscv64' ./config/rootfiles/ --exclude gcc --exclude rust-libc --exclude go --exclude qemu \
    --exclude-dir oldcore --exclude-dir aarch64 --exclude-dir riscv64 --exclude-dir x86_64
	echo "Replace by xxxMACHINExxx !"
fi
