Update 6.7.4 + tuning
This commit is contained in:
327
kernel.sh
327
kernel.sh
@ -1,7 +1,8 @@
|
||||
#!/bin/bash
|
||||
UPDATED="2024-01-07"
|
||||
UPDATED="2024-02-10"
|
||||
|
||||
TESTING=0
|
||||
CLANG=0
|
||||
|
||||
#
|
||||
# Sources:
|
||||
@ -23,39 +24,39 @@ TESTING=0
|
||||
|
||||
#
|
||||
# Prerequisites:
|
||||
# sudo apt install build-essential fakeroot dpkg-dev perl libssl-dev bc gnupg dirmngr libncurses-dev libelf-dev flex bison lsb-release rsync dwarves clang llvm lld
|
||||
# sudo apt install build-essential fakeroot dpkg-dev perl libssl-dev bc gnupg dirmngr libncurses-dev libelf-dev flex bison lsb-release rsync dwarves clang llvm lld debhelper
|
||||
#
|
||||
|
||||
doBuildSystem() {
|
||||
echo "v$UPDATED"
|
||||
echo "v$UPDATED"
|
||||
}
|
||||
|
||||
# Display introduction
|
||||
doIntro() {
|
||||
echo
|
||||
echo
|
||||
if [ $TESTING == 1 ]; then
|
||||
echo "Debian Kernel Builder: $HOSTNAME [TEST]"
|
||||
else
|
||||
echo "Debian Kernel Builder: $HOSTNAME"
|
||||
fi
|
||||
doBuildSystem
|
||||
echo
|
||||
doBuildSystem
|
||||
echo
|
||||
}
|
||||
|
||||
# Show date/time header
|
||||
doHeader() {
|
||||
NOW=`date +"%Y/%m/%d %H:%M:%S"`
|
||||
echo "- $NOW"
|
||||
echo ""
|
||||
NOW=$(date +"%Y/%m/%d %H:%M:%S")
|
||||
echo "- $NOW"
|
||||
echo ""
|
||||
}
|
||||
|
||||
if [ "$(id -u)" != "0" ]; then
|
||||
doIntro
|
||||
doHeader
|
||||
echo
|
||||
echo "This script must be run as root" 1>&2
|
||||
echo
|
||||
exit 1
|
||||
doIntro
|
||||
doHeader
|
||||
echo
|
||||
echo "This script must be run as root" 1>&2
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
|
||||
KERNEL=/opt/kernel
|
||||
@ -83,33 +84,33 @@ cd $CURRENT
|
||||
|
||||
# Force sync & flush
|
||||
doSync() {
|
||||
sync
|
||||
echo 3 > /proc/sys/vm/drop_caches
|
||||
sync
|
||||
echo 3 >/proc/sys/vm/drop_caches
|
||||
}
|
||||
|
||||
doHead() {
|
||||
doIntro
|
||||
doHeader
|
||||
doIntro
|
||||
doHeader
|
||||
}
|
||||
|
||||
# Display help
|
||||
doHelp() {
|
||||
doIntro
|
||||
doHeader
|
||||
doIntro
|
||||
doHeader
|
||||
|
||||
if [ $BRANCH != "help" ]; then
|
||||
echo ">>> Unspecified, unknown or invalid option specified !"
|
||||
echo
|
||||
fi
|
||||
echo "Usage: $SCRIPT 'branch' 'version'"
|
||||
echo
|
||||
echo "branch : Main branch (eg. 6.x)"
|
||||
echo "version: Full version tag (eg. 6.6.1)"
|
||||
echo
|
||||
if [ $BRANCH != "help" ]; then
|
||||
echo ">>> Unspecified, unknown or invalid option specified !"
|
||||
echo
|
||||
fi
|
||||
echo "Usage: $SCRIPT 'branch' 'version'"
|
||||
echo
|
||||
echo "branch : Main branch (eg. 6.x)"
|
||||
echo "version: Full version tag (eg. 6.6.1)"
|
||||
echo
|
||||
}
|
||||
|
||||
doEchoStep() {
|
||||
NOW=`date +"%Y/%m/%d %H:%M:%S"`
|
||||
NOW=$(date +"%Y/%m/%d %H:%M:%S")
|
||||
echo "### $NOW - $1"
|
||||
}
|
||||
|
||||
@ -154,8 +155,11 @@ doCleanup() {
|
||||
cd $WORKDIR
|
||||
|
||||
doEchoStep "Cleanup"
|
||||
# make -j$(nproc) CC="ccache gcc" mrproper
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" mrproper
|
||||
if [ "$CLANG" == "1" ]; then
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" mrproper
|
||||
else
|
||||
make -j$(nproc) CC="ccache gcc" mrproper
|
||||
fi
|
||||
result=$?
|
||||
if [ ! result==0 ]; then
|
||||
echo ">>> Error in cleanup !"
|
||||
@ -183,8 +187,11 @@ doOldOne() {
|
||||
cd $WORKDIR
|
||||
|
||||
doEchoStep "Generate config from old kernel .config"
|
||||
# make -j$(nproc) CC="ccache gcc" olddefconfig
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" olddefconfig
|
||||
if [ "$CLANG" == "1" ]; then
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" olddefconfig
|
||||
else
|
||||
make -j$(nproc) CC="ccache gcc" olddefconfig
|
||||
fi
|
||||
result=$?
|
||||
if [ ! result==0 ]; then
|
||||
echo ">>> Error in generate .config !"
|
||||
@ -198,8 +205,11 @@ doAllMods() {
|
||||
cd $WORKDIR
|
||||
|
||||
doEchoStep "Set all modules to be 'module'"
|
||||
# make -j$(nproc) CC="ccache gcc" allmodconfig
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" allmodconfig
|
||||
if [ "$CLANG" == "1" ]; then
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" allmodconfig
|
||||
else
|
||||
make -j$(nproc) CC="ccache gcc" allmodconfig
|
||||
fi
|
||||
result=$?
|
||||
if [ ! result==0 ]; then
|
||||
echo ">>> Error in set all modules not in kernel !"
|
||||
@ -290,7 +300,6 @@ doDefaultsDisable() {
|
||||
./scripts/config --disable CONFIG_BTRFS_DEBUG
|
||||
./scripts/config --disable CONFIG_BTRFS_FS
|
||||
./scripts/config --disable CONFIG_BTRFS_FS_CHECK_INTEGRITY
|
||||
./scripts/config --disable CONFIG_BTRFS_FS_POSIX_ACL
|
||||
./scripts/config --disable CONFIG_BTRFS_FS_REF_VERIFY
|
||||
./scripts/config --disable CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
||||
./scripts/config --disable CONFIG_CACHEFILES_DEBUG
|
||||
@ -357,8 +366,6 @@ doDefaultsDisable() {
|
||||
./scripts/config --disable CONFIG_EXT2_FS
|
||||
./scripts/config --disable CONFIG_EXT3_FS
|
||||
./scripts/config --disable CONFIG_EXT4_DEBUG
|
||||
./scripts/config --disable CONFIG_EXT4_FS_POSIX_ACL
|
||||
./scripts/config --disable CONFIG_EXT4_FS_SECURITY
|
||||
./scripts/config --disable CONFIG_EXT4_KUNIT_TESTS
|
||||
./scripts/config --disable CONFIG_F2FS_FS
|
||||
./scripts/config --disable CONFIG_FAT_KUNIT_TEST
|
||||
@ -427,7 +434,6 @@ doDefaultsDisable() {
|
||||
./scripts/config --disable CONFIG_NO_HZ
|
||||
./scripts/config --disable CONFIG_NTFS_DEBUG
|
||||
./scripts/config --disable CONFIG_NTFS3_64BIT_CLUSTER
|
||||
./scripts/config --disable CONFIG_NTFS3_FS_POSIX_ACL
|
||||
./scripts/config --disable CONFIG_OCFS2_FS
|
||||
./scripts/config --disable CONFIG_OSF_PARTITION
|
||||
./scripts/config --disable CONFIG_PAGE_POOL_STATS
|
||||
@ -513,7 +519,6 @@ doDefaultsDisable() {
|
||||
./scripts/config --disable CONFIG_XFS_ONLINE_REPAIR
|
||||
./scripts/config --disable CONFIG_XFS_ONLINE_SCRUB
|
||||
./scripts/config --disable CONFIG_XFS_ONLINE_SCRUB_STATS
|
||||
./scripts/config --disable CONFIG_XFS_POSIX_ACL
|
||||
./scripts/config --disable CONFIG_XFS_QUOTA
|
||||
./scripts/config --disable CONFIG_XFS_RT
|
||||
./scripts/config --disable CONFIG_XFS_SUPPORT_ASCII_CI
|
||||
@ -565,6 +570,28 @@ doDefaultsDisable() {
|
||||
./scripts/config --disable CONFIG_CPU_IBRS_ENTRY
|
||||
./scripts/config --disable CONFIG_GDS_FORCE_MITIGATION
|
||||
./scripts/config --disable CONFIG_SPECULATION_MITIGATIONS
|
||||
./scripts/config --disable CONFIG_VIRT_CPU_ACCOUNTING_GEN
|
||||
./scripts/config --disable CONFIG_IRQ_TIME_ACCOUNTING
|
||||
./scripts/config --disable CONFIG_TASKSTATS
|
||||
./scripts/config --disable CONFIG_PSI
|
||||
./scripts/config --disable CONFIG_RCU_NOCB_CPU
|
||||
./scripts/config --disable CONFIG_KALLSYMS
|
||||
./scripts/config --disable CONFIG_KALLSYMS_ALL
|
||||
./scripts/config --disable CONFIG_SCHED_MC
|
||||
./scripts/config --disable CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS
|
||||
./scripts/config --disable CONFIG_SPECULATION_MITIGATIONS
|
||||
./scripts/config --disable CONFIG_PAGE_TABLE_ISOLATION
|
||||
./scripts/config --disable CONFIG_RETPOLINE
|
||||
./scripts/config --disable CONFIG_CPU_IBRS_ENTRY
|
||||
./scripts/config --disable CONFIG_GDS_FORCE_MITIGATION
|
||||
./scripts/config --disable CONFIG_INIT_ON_ALLOC_DEFAULT_ON
|
||||
./scripts/config --disable CONFIG_LIST_HARDENED
|
||||
./scripts/config --disable CONFIG_BUG_ON_DATA_CORRUPTION
|
||||
./scripts/config --disable CONFIG_CALL_THUNKS_DEBUG
|
||||
./scripts/config --disable CONFIG_KPROBES
|
||||
./scripts/config --disable CONFIG_IPV6
|
||||
./scripts/config --disable WIRELESS
|
||||
./scripts/config --disable CONFIG_SLUB_DEBUG
|
||||
}
|
||||
doDefaultsEnable() {
|
||||
doEchoStep "Options: enable"
|
||||
@ -583,7 +610,6 @@ doDefaultsEnable() {
|
||||
./scripts/config --enable CONFIG_BPF_SYSCALL
|
||||
./scripts/config --enable CONFIG_BSD_PROCESS_ACCT
|
||||
./scripts/config --enable CONFIG_CALL_DEPTH_TRACKING
|
||||
./scripts/config --enable CONFIG_CALL_THUNKS_DEBUG
|
||||
./scripts/config --enable CONFIG_CGROUP_CPUACCT
|
||||
./scripts/config --enable CONFIG_CGROUP_DEVICE
|
||||
./scripts/config --enable CONFIG_CGROUP_MISC
|
||||
@ -598,7 +624,6 @@ doDefaultsEnable() {
|
||||
./scripts/config --enable CONFIG_CIFS_DFS_UPCALL
|
||||
./scripts/config --enable CONFIG_CIFS_STATS2
|
||||
./scripts/config --enable CONFIG_CIFS_SWN_UPCALL
|
||||
./scripts/config --enable CONFIG_CIFS_XATTR
|
||||
./scripts/config --enable CONFIG_COMPAT_32BIT_TIME
|
||||
./scripts/config --enable CONFIG_CONFIGFS_FS
|
||||
./scripts/config --enable CONFIG_CPU_FREQ
|
||||
@ -818,9 +843,141 @@ doDefaultsEnable() {
|
||||
./scripts/config --enable CONFIG_CRYPTO_LZO
|
||||
./scripts/config --enable CONFIG_CRYPTO_LZ4
|
||||
./scripts/config --enable CONFIG_CRYPTO_ZSTD
|
||||
./scripts/config --enable CONFIG_GENERIC_CPU4
|
||||
./scripts/config --enable CONFIG_HZ_100
|
||||
./scripts/config --enable CONFIG_PREEMPT_NONE
|
||||
./scripts/config --enable CONFIG_INTEL_TDX_HOST
|
||||
./scripts/config --enable CONFIG_MODULE_COMPRESS_NONE
|
||||
./scripts/config --enable CONFIG_ZSWAP
|
||||
./scripts/config --enable CONFIG_ZSWAP_DEFAULT_ON
|
||||
./scripts/config --enable CONFIG_TRANSPARENT_HUGEPAGE_MADVISE
|
||||
./scripts/config --enable CONFIG_BTRFS_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_XFS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_CEPH_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_EROFS_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_NFS_V3_ACL
|
||||
./scripts/config --enable CONFIG_NFSD_V3_ACL
|
||||
./scripts/config --enable CONFIG_NTFS3_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_TMPFS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_EXT4_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_EXT2_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_REISERFS_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_JFS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_F2FS_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_JFFS2_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_NFSD_V2_ACL
|
||||
./scripts/config --enable CONFIG_9P_FS_POSIX_ACL
|
||||
./scripts/config --enable CONFIG_EROFS_FS_XATTR
|
||||
./scripts/config --enable CONFIG_EVM_ADD_XATTRS
|
||||
./scripts/config --enable CONFIG_SQUASHFS_XATTR
|
||||
./scripts/config --enable CONFIG_CIFS_XATTR
|
||||
./scripts/config --enable CONFIG_TMPFS_XATTR
|
||||
./scripts/config --enable CONFIG_EXT2_FS_XATTR
|
||||
./scripts/config --enable CONFIG_EXT4_FS_XATTR
|
||||
./scripts/config --enable CONFIG_REISERFS_FS_XATTR
|
||||
./scripts/config --enable CONFIG_F2FS_FS_XATTR
|
||||
./scripts/config --enable CONFIG_JFFS2_FS_XATTR
|
||||
./scripts/config --enable CONFIG_UBIFS_FS_XATTR
|
||||
./scripts/config --enable CONFIG_EXT4_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_EXT2_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_REISERFS_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_JFS_SECURITY
|
||||
./scripts/config --enable CONFIG_F2FS_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_JFFS2_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_UBIFS_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_EROFS_FS_SECURITY
|
||||
./scripts/config --enable CONFIG_SECURITYFS
|
||||
./scripts/config --enable CONFIG_KEYS_REQUEST_CACHE
|
||||
./scripts/config --enable CONFIG_IMA_READ_POLICY
|
||||
./scripts/config --enable CONFIG_CRYPTO_ECDH
|
||||
./scripts/config --enable CONFIG_CRYPTO_ECRDSA
|
||||
./scripts/config --enable CONFIG_CRYPTO_SM2
|
||||
./scripts/config --enable CONFIG_CRYPTO_CURVE25519
|
||||
./scripts/config --enable CONFIG_CRYPTO_AES_TI
|
||||
./scripts/config --enable CONFIG_CRYPTO_ARIA
|
||||
./scripts/config --enable CONFIG_CRYPTO_BLOWFISH
|
||||
./scripts/config --enable CONFIG_CRYPTO_CAMELLIA
|
||||
./scripts/config --enable CONFIG_CRYPTO_CAST5
|
||||
./scripts/config --enable CONFIG_CRYPTO_CAST6
|
||||
./scripts/config --enable CONFIG_CRYPTO_DES
|
||||
./scripts/config --enable CONFIG_CRYPTO_FCRYPT
|
||||
./scripts/config --enable CONFIG_CRYPTO_SERPENT
|
||||
./scripts/config --enable CONFIG_CRYPTO_SM4_GENERIC
|
||||
./scripts/config --enable CONFIG_CRYPTO_TWOFISH
|
||||
./scripts/config --enable CONFIG_CRYPTO_ADIANTUM
|
||||
./scripts/config --enable CONFIG_CRYPTO_CHACHA20
|
||||
./scripts/config --enable CONFIG_CRYPTO_CFB
|
||||
./scripts/config --enable CONFIG_CRYPTO_CTS
|
||||
./scripts/config --enable CONFIG_CRYPTO_HCTR2
|
||||
./scripts/config --enable CONFIG_CRYPTO_KEYWRAP
|
||||
./scripts/config --enable CONFIG_CRYPTO_LRW
|
||||
./scripts/config --enable CONFIG_CRYPTO_OFB
|
||||
./scripts/config --enable CONFIG_CRYPTO_PCBC
|
||||
./scripts/config --enable CONFIG_CRYPTO_XTS
|
||||
./scripts/config --enable CONFIG_CRYPTO_AEGIS128
|
||||
./scripts/config --enable CONFIG_CRYPTO_CHACHA20POLY1305
|
||||
./scripts/config --enable CONFIG_CRYPTO_ESSIV
|
||||
./scripts/config --enable CONFIG_CRYPTO_BLAKE2B
|
||||
./scripts/config --enable CONFIG_CRYPTO_MD4
|
||||
./scripts/config --enable CONFIG_CRYPTO_MICHAEL_MIC
|
||||
./scripts/config --enable CONFIG_CRYPTO_POLY1305
|
||||
./scripts/config --enable CONFIG_CRYPTO_RMD160
|
||||
./scripts/config --enable CONFIG_CRYPTO_SM3_GENERIC
|
||||
./scripts/config --enable CONFIG_CRYPTO_STREEBOG
|
||||
./scripts/config --enable CONFIG_CRYPTO_VMAC
|
||||
./scripts/config --enable CONFIG_CRYPTO_WP512
|
||||
./scripts/config --enable CONFIG_CRYPTO_XCBC
|
||||
./scripts/config --enable CONFIG_CRYPTO_XXHASH
|
||||
./scripts/config --enable CONFIG_CRYPTO_CRC32
|
||||
./scripts/config --enable CONFIG_CRYPTO_LZ4HC
|
||||
./scripts/config --enable CONFIG_CRYPTO_ANSI_CPRNG
|
||||
./scripts/config --enable CONFIG_CRYPTO_USER_API_HASH
|
||||
./scripts/config --enable CONFIG_CRYPTO_USER_API_SKCIPHER
|
||||
./scripts/config --enable CONFIG_CRYPTO_USER_API_RNG
|
||||
./scripts/config --enable CONFIG_CRYPTO_USER_API_AEAD
|
||||
./scripts/config --enable CONFIG_CRYPTO_AES_NI_INTEL
|
||||
./scripts/config --enable CONFIG_CRYPTO_SHA1_SSSE3
|
||||
./scripts/config --enable CONFIG_CRYPTO_SHA256_SSSE3
|
||||
./scripts/config --enable CONFIG_CRYPTO_SHA512_SSSE3
|
||||
./scripts/config --enable CONFIG_CRYPTO_CRC32C_INTEL
|
||||
./scripts/config --enable CONFIG_CRYPTO_CRC32_PCLMUL
|
||||
./scripts/config --enable CONFIG_CRYPTO_LIB_CHACHA
|
||||
./scripts/config --enable CONFIG_CRYPTO_LIB_CURVE25519
|
||||
./scripts/config --enable CONFIG_CRYPTO_LIB_POLY1305
|
||||
./scripts/config --enable CRYPTO_LIB_CHACHA20POLY1305
|
||||
./scripts/config --enable CONFIG_CRC4
|
||||
./scripts/config --enable CONFIG_NO_HZ_IDLE
|
||||
./scripts/config --enable CONFIG_PSI
|
||||
./scripts/config --enable CONFIG_PARAVIRT_SPINLOCKS
|
||||
./scripts/config --enable CONFIG_PERF_EVENTS_INTEL_UNCORE
|
||||
./scripts/config --enable CONFIG_PERF_EVENTS_INTEL_RAPL
|
||||
./scripts/config --enable CONFIG_PERF_EVENTS_INTEL_CSTATE
|
||||
./scripts/config --enable CONFIG_X86_CPA_STATISTICS
|
||||
./scripts/config --enable CONFIG_X86_USER_SHADOW_STACK
|
||||
./scripts/config --enable CONFIG_LEGACY_VSYSCALL_XONLY
|
||||
./scripts/config --enable CONFIG_ACPI_FPDT
|
||||
./scripts/config --enable CONFIG_ACPI_BGRT
|
||||
./scripts/config --enable CONFIG_ACPI_NFIT
|
||||
./scripts/config --enable CONFIG_ACPI_DPTF
|
||||
./scripts/config --enable CONFIG_ACPI_FFH
|
||||
./scripts/config --enable CONFIG_ACPI_PFRUT
|
||||
./scripts/config --enable CONFIG_DEVTMPFS_MOUNT
|
||||
./scripts/config --enable CONFIG_FW_LOADER_COMPRESS_ZSTD
|
||||
./scripts/config --enable CONFIG_FW_CFG_SYSFS
|
||||
./scripts/config --enable CONFIG_EFI_COCO_SECRET
|
||||
./scripts/config --enable CONFIG_VIRTIO_NET
|
||||
./scripts/config --enable CONFIG_MEDIA_PLATFORM_SUPPORT
|
||||
./scripts/config --enable CONFIG_FB_VESA
|
||||
./scripts/config --enable CONFIG_FB_NVIDIA
|
||||
./scripts/config --enable CONFIG_FB_RIVA
|
||||
./scripts/config --enable CONFIG_FB_SIMPLE
|
||||
./scripts/config --enable CONFIG_DMADEVICES
|
||||
./scripts/config --enable CONFIG_INTEL_IDMA64
|
||||
./scripts/config --enable CONFIG_INTEL_IDXD
|
||||
./scripts/config --enable CONFIG_INTEL_IOATDMA
|
||||
./scripts/config --enable CONFIG_VFIO_PCI_VGA
|
||||
./scripts/config --enable CONFIG_NFS_FS
|
||||
./scripts/config --enable CONFIG_GENERIC_CPU4
|
||||
}
|
||||
doDefaultsTesting() {
|
||||
doEchoStep "Options: testings activated..."
|
||||
@ -831,7 +988,7 @@ doDefaults() {
|
||||
cd $WORKDIR
|
||||
|
||||
doEchoStep "Apply 'uarches' patch"
|
||||
patch -p1 < ../../../more-uarches-for-kernel.patch
|
||||
patch -p1 <../../../more-uarches-for-kernel.patch
|
||||
|
||||
doEchoStep "Define options"
|
||||
./scripts/config --set-str CONFIG_LOCALVERSION '-zogg'
|
||||
@ -851,8 +1008,11 @@ doEditSettings() {
|
||||
cd $WORKDIR
|
||||
|
||||
doEchoStep "Settings tuning !"
|
||||
# make -j$(nproc) CC="ccache gcc" menuconfig
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" menuconfig
|
||||
if [ "$CLANG" == "1" ]; then
|
||||
make -j$(nproc) LLVM=1 CC="ccache clang" menuconfig
|
||||
else
|
||||
make -j$(nproc) CC="ccache gcc" menuconfig
|
||||
fi
|
||||
result=$?
|
||||
if [ ! result==0 ]; then
|
||||
echo ">>> Error in settings edit !"
|
||||
@ -869,7 +1029,7 @@ doGenerateUninstall() {
|
||||
mkdir -p $READY
|
||||
rm -rf $READY/*.*
|
||||
|
||||
if ls $WORKDIR/../*.deb 1> /dev/null 2>&1; then
|
||||
if ls $WORKDIR/../*.deb 1>/dev/null 2>&1; then
|
||||
|
||||
# find .deb packages and generate
|
||||
# uninstall commands
|
||||
@ -877,21 +1037,20 @@ doGenerateUninstall() {
|
||||
PACKAGES=
|
||||
TAG="_$VERSION-1_amd64.deb"
|
||||
search_dir=$WORKDIR/../
|
||||
for entry in "$search_dir"/*.deb
|
||||
do
|
||||
for entry in "$search_dir"/*.deb; do
|
||||
name="${entry##*/}"
|
||||
pname=${name//$TAG/}
|
||||
if [ ! "$pname" == "linux-libc-dev" ]; then
|
||||
PACKAGES="$PACKAGES $pname"
|
||||
fi
|
||||
echo "$name" >> $READY/packages.log
|
||||
echo "$name" >>$READY/packages.log
|
||||
done
|
||||
|
||||
# move files to destination folder
|
||||
mv -f $WORKDIR/../*.deb $READY/
|
||||
mv -f $WORKDIR/../*.deb $READY/
|
||||
|
||||
# prepare uninstall script
|
||||
cat <<EOF > $READY/uninstall.sh
|
||||
cat <<EOF >$READY/uninstall.sh
|
||||
#!/bin/bash
|
||||
# ${UPDATED}
|
||||
apt remove --purge ${PACKAGES}
|
||||
@ -900,10 +1059,10 @@ exit 0
|
||||
EOF
|
||||
|
||||
# generate install script
|
||||
cat <<EOF > $READY/install.sh
|
||||
cat <<EOF >$READY/install.sh
|
||||
#!/bin/bash
|
||||
# ${UPDATED}
|
||||
echo 'blacklist pcspkr' > /etc/modprobe.d/blacklist-pcspkr.conf
|
||||
echo 'blacklist pcspkr' > /etc/modprobe.d/pcspkr.conf
|
||||
sudo dpkg -i *.deb
|
||||
sudo sync
|
||||
exit 0
|
||||
@ -943,7 +1102,7 @@ doCompile() {
|
||||
|
||||
doEchoStep "Compilation time... Be patient!"
|
||||
NB_CORES=$(grep -c '^processor' /proc/cpuinfo)
|
||||
export MAKEFLAGS="-j$((NB_CORES+1)) -l${NB_CORES} -Werror=maybe-uninitialized -Werror=nonnull -Wno-maybe-uninitialized -Wno-uninitialized -Wno-free-nonheap-object -Wno-nonnull"
|
||||
export MAKEFLAGS="-j$((NB_CORES + 1)) -l${NB_CORES} -Werror=maybe-uninitialized -Werror=nonnull -Wno-maybe-uninitialized -Wno-uninitialized -Wno-free-nonheap-object -Wno-nonnull"
|
||||
export CFLAGS='-march=x86-64-v4 -O2 -flto -pipe'
|
||||
export CXXFLAGS='-march=x86-64-v4 -O2 -flto -pipe'
|
||||
export KCFLAGS=' -march=x86-64-v4 -O2'
|
||||
@ -952,19 +1111,22 @@ doCompile() {
|
||||
set DEB_BUILD_OPTIONS=nocheck
|
||||
|
||||
doEchoStep "make bindeb-pkg"
|
||||
# make \
|
||||
# -j$(nproc) \
|
||||
# CC='ccache gcc' \
|
||||
# bindeb-pkg \
|
||||
# LOCALVERSION=-"$(dpkg --print-architecture)" \
|
||||
# KDEB_PKGVERSION="$(make kernelversion)-1"
|
||||
make \
|
||||
-j$(nproc) \
|
||||
LLVM=1 \
|
||||
CC='ccache clang' \
|
||||
bindeb-pkg \
|
||||
LOCALVERSION=-"$(dpkg --print-architecture)" \
|
||||
KDEB_PKGVERSION="$(make kernelversion)-1"
|
||||
if [ "$CLANG" == "1" ]; then
|
||||
make \
|
||||
-j$(nproc) \
|
||||
LLVM=1 \
|
||||
CC='ccache clang' \
|
||||
bindeb-pkg \
|
||||
LOCALVERSION=-"$(dpkg --print-architecture)" \
|
||||
KDEB_PKGVERSION="$(make kernelversion)-1"
|
||||
else
|
||||
make \
|
||||
-j$(nproc) \
|
||||
CC='ccache gcc' \
|
||||
bindeb-pkg \
|
||||
LOCALVERSION=-"$(dpkg --print-architecture)" \
|
||||
KDEB_PKGVERSION="$(make kernelversion)-1"
|
||||
fi
|
||||
result=$?
|
||||
|
||||
doEchoStep "make bindeb-pkg: $result"
|
||||
@ -987,25 +1149,28 @@ doKernel() {
|
||||
touch $LOGFILE
|
||||
|
||||
if [ "$STEPS" != "compile" ]; then
|
||||
doDownload > >(tee -a $LOGFILE) 2>&1
|
||||
doUncompress > >(tee -a $LOGFILE) 2>&1
|
||||
doDownload > >(tee -a $LOGFILE) 2>&1
|
||||
doUncompress > >(tee -a $LOGFILE) 2>&1
|
||||
fi
|
||||
WORKDIR=$WORKDIR/linux-$VERSION
|
||||
doCleanup > >(tee -a $LOGFILE) 2>&1
|
||||
doConfigCloud > >(tee -a $LOGFILE) 2>&1
|
||||
doOldOne > >(tee -a $LOGFILE) 2>&1
|
||||
doCleanup > >(tee -a $LOGFILE) 2>&1
|
||||
doConfigCloud > >(tee -a $LOGFILE) 2>&1
|
||||
doOldOne > >(tee -a $LOGFILE) 2>&1
|
||||
# doAllMods > >(tee -a $LOGFILE) 2>&1
|
||||
# doStripDebug > >(tee -a $LOGFILE) 2>&1
|
||||
doDefaults > >(tee -a $LOGFILE) 2>&1
|
||||
doPermissions > >(tee -a $LOGFILE) 2>&1
|
||||
doDefaults > >(tee -a $LOGFILE) 2>&1
|
||||
doPermissions > >(tee -a $LOGFILE) 2>&1
|
||||
doEditSettings
|
||||
|
||||
while true; do
|
||||
read -p "Do you wish to run compile? " yn
|
||||
case $yn in
|
||||
[Yy]* ) doCompile > >(tee -a $LOGFILE) 2>&1; break;;
|
||||
[Nn]* ) exit;;
|
||||
* ) echo "Please answer yes or no.";;
|
||||
[Yy]*)
|
||||
doCompile > >(tee -a $LOGFILE) 2>&1
|
||||
break
|
||||
;;
|
||||
[Nn]*) exit ;;
|
||||
*) echo "Please answer yes or no." ;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
@ -1020,4 +1185,4 @@ else
|
||||
doKernel
|
||||
fi
|
||||
|
||||
exit 0
|
||||
exit 0
|
||||
|
Reference in New Issue
Block a user