summaryrefslogblamecommitdiff
path: root/system/easy-kernel/APKBUILD
blob: 427e0d9e5555ec721aacf831cf5d70ec34654182 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                  
                                                                        

                                                        
                                            
                              

            
                                      


                                                         
                                       
                      
                     
                                                         
                                                 
                                                    
                                                           

                                              


                                                                                           
                      
                    
                   




                      
                
 
                              



                                             
                              

                                              
                                         
                                         
                                    
                             
                                        



                                                   

                                
                                        



                                

                           

                                       
         
                                      

           
                       
 
                    

                                                    


                                                                         


         
                       

                              
                                             
                                       




                                                                                                      


           



                                            


                                              
                                                                                  


                                              
                                                                                  

          

                                                 
                                                                                     




                                                                        
 
                                                              
                                                                                             



                                                          
                                                                 
                                                                       
                                 
                                                 





                                                                                   



                                                               

 





















                                                                                 
       
                                                             
                                                             
                                     
                                                                                        
 
 








                                                                                                                                                              
                                                                                                                                          


                                                                                                                                                                       

                                                                                                                                                                    


                                                                                                                                                                        
                                                                                                                                                                   
                                                                                                                                                                   
                                                                                                                                                              
                                                                                                                                                       
                                                                                                                                                                  



                                                                                                                                                                             
                                                                                                                                                          




                                                                                                                                                                  

                                                                                                                                                                  
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: Adelie Platform Group <adelie-devel@lists.adelielinux.org>
# KEEP THIS IN SYNC with the other easy-kernel packages.
_kflavour=""
_patchver=1  # must match 1000-version.patch
_pkgname=easy-kernel$_kflavour
pkgver=6.6.6
pkgrel=0
pkgname=$_pkgname-$pkgver-mc$_patchver
pkgdesc="The Linux kernel, packaged for your convenience"
url="https://kernel.org/"
arch="all"
options="!check !dbg !strip !tracedeps"
license="GPL-2.0-only"
depends="kernel-boot"
makedepends="bc bison flex gzip kmod lzop openssl-dev xz"
provides="easy-kernel$_kflavour=$pkgver-r$pkgrel"
replaces="easy-kernel-power8 easy-kernel-power8-64k"
subpackages="$_pkgname-modules-$pkgver-mc$_patchver:modules
	$_pkgname-src-$pkgver-mc$_patchver:src
	linux-headers:headers"
_pkgmajver=${pkgver%%.*}
_pkgminver=${pkgver%.*}
source="https://cdn.kernel.org/pub/linux/kernel/v${_pkgmajver}.x/linux-${_pkgminver}.tar.xz
	config-aarch64
	config-armv7
	config-m68k
	config-pmmx
	config-ppc
	config-ppc64
	config-sparc64
	config-x86_64
	kernel.h

	0100-linux-6.6.6.patch
	0120-XATTR_USER_PREFIX.patch
	0122-link-security-restrictions.patch
	0124-bluetooth-keysize-check.patch
	0126-sign-file-libressl.patch
	0200-x86-compile.patch
	0202-parisc-disable-prctl.patch
	0204-amd-deserialised-MSR-access.patch
	0210-fix-powerbook6-5-audio.patch
	0250-expose-per-process-ksm.patch
	0260-reduce-swappiness.patch
	0262-boot-order.patch
	0300-tmp513-regression-fix.patch
	0302-iwlwifi-rfkill-fix.patch
	0400-reduce-pageblock-size-nonhugetlb.patch
	0402-mm-optimise-slub.patch
	0404-page-cache-not-found.patch
	0500-print-fw-info.patch
	0502-gcc9-kcflags.patch
	0504-update-zstd-to-v1_5_5.patch
	1000-version.patch

	no-require-gnu-tar.patch
	no-require-lilo.patch

	no-autoload-fb.conf

	mkimage-missing-not-fatal.patch
	"
builddir="$srcdir/linux-${_pkgminver}"

prepare() {
	default_prepare

	cd "$srcdir"
	cp config-$CARCH linux-${_pkgminver}/.config
	cp -pr linux-${_pkgminver} linux-src
	if [ -f $HOME/kernel_key.pem ]; then
		cp $HOME/kernel_key.pem "$builddir"/certs/signing_key.pem
	fi
}

build() {
	make LDFLAGS=""

	cd "$srcdir/linux-src"
	make LDFLAGS="" modules_prepare clean
	cp "$builddir/Module.symvers" .

	# Kernel bug: crtsavres.o is required to build modules, but modules_prepare doesn't create it.
	if [ $CARCH = ppc ]; then
		cp "$builddir/arch/powerpc/lib/crtsavres.o" arch/powerpc/lib/
	fi
}

package() {
	mkdir -p "$pkgdir"/boot
	make INSTALL_PATH="$pkgdir"/boot \
		INSTALL_MOD_PATH="$pkgdir" \
		install modules_install

	if [ -f "$pkgdir"/boot/vmlinuz ]; then
		mv "$pkgdir"/boot/vmlinuz \
			"$pkgdir"/boot/vmlinuz-$pkgver-mc$_patchver-easy$_kflavour
	fi
	if [ -f "$pkgdir"/boot/vmlinux ]; then
		mv "$pkgdir"/boot/vmlinux \
			"$pkgdir"/boot/vmlinux-$pkgver-mc$_patchver-easy$_kflavour
	fi

	if [ -f "$pkgdir"/boot/System.map ]; then
		mv "$pkgdir"/boot/System.map \
			"$pkgdir"/boot/System.map-$pkgver-mc$_patchver-easy$_kflavour
	fi

	case $CARCH in
	aarch64|arm*)	make INSTALL_PATH="$pkgdir"/boot dtbs_install ;;
	esac

	install -D "$builddir"/include/config/kernel.release \
		"$pkgdir"/usr/share/kernel/easy-$pkgver-mc$_patchver$_kflavour/kernel.release
}

modules() {
	pkgdesc="Modules / device drivers for easy-kernel"
	provides="easy-kernel$_kflavour-modules=$pkgver-r$pkgrel"
	autodeps=0  # modules should not depend on src just for symlink
	mkdir -p "$subpkgdir"/lib
	mv "$pkgdir"/lib/modules "$subpkgdir"/lib
	rm "$subpkgdir"/lib/modules/$pkgver-mc$_patchver-easy$_kflavour/build
	rm "$subpkgdir"/lib/modules/$pkgver-mc$_patchver-easy$_kflavour/source
	ln -s "../../../usr/src/linux-$pkgver-mc$_patchver$_kflavour" \
		"$subpkgdir"/lib/modules/$pkgver-mc$_patchver-easy$_kflavour/build
	ln -s "../../../usr/src/linux-$pkgver-mc$_patchver$_kflavour" \
		"$subpkgdir"/lib/modules/$pkgver-mc$_patchver-easy$_kflavour/source

	mkdir -p "$subpkgdir"/etc/modprobe.d
	install -m644 "$srcdir"/no-autoload-fb.conf \
		"$subpkgdir"/etc/modprobe.d/no-autoload-fb.conf
}

headers() {
	pkgdesc="System headers provided by the Linux kernel"

	mkdir -p "$subpkgdir"/usr
	make -C "$builddir" headers
	find "$builddir"/usr/include -name '.*' -delete
	rm "$builddir"/usr/include/Makefile
	cp -rv "$builddir"/usr/include "$subpkgdir/usr"

	find "$subpkgdir/usr" \( -name .install -o -name ..install.cmd \) -exec \
		rm -f {} \;

	# provided by libdrm
	rm -rf "$subpkgdir"/usr/include/drm

	# needed for spl, VMware on x86, etc
	install -D -m644 "$builddir"/include/generated/utsrelease.h \
		"$subpkgdir"/usr/include/linux/utsrelease.h

	install -m644 "$srcdir"/kernel.h "$subpkgdir"/usr/include/linux/kernel.h
}

src() {
	pkgdesc="Kernel source code used to build the kernel"
	provides="easy-kernel$_kflavour-src=$pkgver-r$pkgrel"
	mkdir -p "$subpkgdir"/usr/src
	mv "$srcdir"/linux-src "$subpkgdir"/usr/src/linux-$pkgver-mc$_patchver$_kflavour
}

sha512sums="458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35  linux-6.6.tar.xz
ee0aa6868315bb41fd16418c4a9d1786eb6b9f946e77ed392f81e4cbe6d4c25ee60cbc345b9ba552c19a66eecc3ca1517014d1301f94cbad863c7e4e24e50ee0  config-aarch64
84ade351c7fb6ff8772ee3f1179760cf79e2be450c5443cec30b86246f7c76bda59846484f29d0db0177a1db97ee8adda3e616708cbf949e04cd224ef358dadd  config-armv7
586357146131af4537141ae71cbb34d5511174dfd977fdfa31170b4ad19fe77dfc2e9da0301fc53871c84ab9766fc902cfdfd3cc5fc09a671cb70a41173b0fbf  config-m68k
9f65ddeea1bd843af4ec970e507c635d121be1d556d60963668aa61bb0bcc7041dccbff1304dcfc2d2b911dd6db4914770127a7358d15b01fa0c423a5fb964ea  config-pmmx
e196f2641984cc0305f80d9285a35dc47674983d756851b11af58e1a2bb488750016364766aedd46befc07697b3bb04a571ee960332864d54b39ca5cd0c2c568  config-ppc
01727a368518ee61502fba15a468e6c3985fdd09848c8117e55d9f86c1f4df28bc84191af11e72e023cddb73c4915f6ec7cabd3a9c8f313ae88da29052e6401e  config-ppc64
da70ba6236b233d5b917ccc1e4f428056c45c3e0c7ce6953742b3b2886a0209c4a3b76699f15b1629a5d11a7c1c320bc9aef08ee7bfc5a5d3445c56078a38379  config-sparc64
fafe1704c04db8ee85c2641e8aa1f32596d02e061fa9c57035957deaa95c409fd820f0edc840f7818ee2752503fd049d8115b202b068544324ac70c09764c779  config-x86_64
1ca1bc094a8106b33176ab6cfb55c9514e7d69f1ed30c580eee419a3c422a2e6625d71c4581702e911f36c4bbac175010f46b7123bb81fda3303d4decdc57287  kernel.h
12236457a3b9d938fdf150b6d62ad4a4655e48e30493ea7c4d8c89b0aabb3a7045d25bd4f0fcf7c19f8ed13f6ad357e0a958a6fb6a7a4a0ff39c7cc61e34f048  0100-linux-6.6.6.patch
1777c174839d9191ec8530c95ff990505473374723cabd00652c9be478a08c430ecaadab52c4cd0588c42e6991dcb26c5de246b3a0df3253935077476ffbdae6  0120-XATTR_USER_PREFIX.patch
d333494e1a261175ab11d84ace49ad3dcb010614e61d0bfe1d39d7c330d1c0e0311699423fbec5841c9c6ff514f4f5b1e63072f0289450ac2883f1d3a80c2961  0122-link-security-restrictions.patch
dc47b18749d95a456f8bc47fd6a0618c286b646b38466c3d950dfbeb25adf3fc1a794e95552e4da1abb58e49f0bd841f7222e71c4d04cb0264ca23476ca9caef  0124-bluetooth-keysize-check.patch
79eaf814d76402a445efc961666a7c7c74207e552b0cb32d93d5cb828da580f7dbe93509dc9f53321c7844663205a8dce4e518ba047e4c57fc55f5c3498088ec  0126-sign-file-libressl.patch
8ee913a4187740457a2de64708edf757666c6a8a7f8ef30aaa8eee22290a30fa5d636d10de1fad334a30b4acdb733ffe556fb046d5d1769bde3b4e85906189d5  0200-x86-compile.patch
aa5636e778b053a65b739056f300bbc2056dabc215dc110ac35bf3ce0f1cd35d9eafb4db87e804993200fa2de4e84e6410d7d77794abbb446ef7fc83c22d3296  0202-parisc-disable-prctl.patch
403d9145d858483fb55d2d6a7276170e808fb6936f0db46e63ae01a3ef2e4e6425b2db6d459415c15e15de495f37cec1be73ee98b070a49d9543bb864062e006  0204-amd-deserialised-MSR-access.patch
05376bf6307dc26d64f6cf7ee809deb81caf8b3040cb80170844505e3d5b10220d51879f047304bea4bde7c001c1924ae52dfc01f292890dab7f06dfb10264d9  0210-fix-powerbook6-5-audio.patch
dd8dcd068000c6946d4d077a3ca3fc7a18c9b2e579f36b4b7c3e54ad8cb37fa19dfff6d950379c93a70c6e19411882e5d2b496f560f331e0ba5f1f63c880ae37  0250-expose-per-process-ksm.patch
9450d34f0a0efa6b11c5c84b4f8aed6a9095e8737673cdc731fd4c6ff9afa0b3e75e3d38a2542f72279a8be16aba8e8d4fd47535ca947302ed68a98e724c71b6  0260-reduce-swappiness.patch
7796055bbbaf5eb421991cd2b9e7ea030e1da0484855a2405c0c71070246a83d04165f9b61e1a9cc45aea84bfe150da3441d7cd241a5dd3a06ea03dada1cfc37  0262-boot-order.patch
4e637935c2f37cc18f347293e3c94b18f90e2caccca726304a95c4891257a5b2bb3093aee7a97571038b29c0c987cc60a9a80aefd0d4c9a063b33d102f03579e  0300-tmp513-regression-fix.patch
bb70170e6c23cfee7e3abeecf3a238f9f6237b07ed3a1c44d83cdf812046c1ab56d15b79fd793a0c08eb93ffff9578f0bf33d482d98cd3b605eb6e3b33b81b94  0302-iwlwifi-rfkill-fix.patch
34f7fc726caedabdf0cee350c8eb9fb84041388d537bb3cfcd143dcf89dca8b8a75dd2611896987d4ce31aa2935598b860ea93fc8bbd65ce47385f3468f7f650  0400-reduce-pageblock-size-nonhugetlb.patch
1d4391cf8f34e6898da303803961364474aa175b0a95dd13b284e88a9590c657083db78efb65d9fa9d40c22e0948da0bdc1063ee84ae0a699292a4d953d6bf65  0402-mm-optimise-slub.patch
882cc2a0692a3b4841a5814a1b552db6dab10e49528050f265d04b6d34fe517e2f3f6436de82f889b5471192f87ecfdff9ea142c651154622821579429519b4c  0404-page-cache-not-found.patch
dfd940af1d14e8a2cc1fcffbfa0fa8db52accf67cad3a7f435fc84047c945ba64dc3c45eb8dbbcc82715d8b8f2fbafa1e22b123158029016c5506cc134a7842c  0500-print-fw-info.patch
fb5162bc01913278fe1eacb43bfbea7b6f1dbc186d40a9630d26666fb16720a411142edabefb8dd0918fdeb1a47486870b890c7347252773d6ec1109e0b01cb6  0502-gcc9-kcflags.patch
a232b89428dbc367c6f8df90b294da4c9b040843947d4914f617c90d323dcceaa86522c148634de6795a7539f20bb5c310e52488e4ec0b9b40c46630a714ce0b  0504-update-zstd-to-v1_5_5.patch
ed613bfbd99d74614882741db6b5d97db7032d67e53449f7132903240e4ae4a18876060a2cddd7406b5fe2cabfcfcbd26a95636a1aa941ed63c9fe2dc6fe0f78  1000-version.patch
47540083d16e58bbceaf5a01349c0db982ca9f752980b40261eba4ec9ee3e33a3e73777d9a9a3e4c11cd614e54be6c66956e625e209f796d316d84d6afc03326  no-require-gnu-tar.patch
d3b9e580db6006d25297b2dc17c4dc97be35992f9a02dd3bc37afa7d8054f8828a5c2060a5ffbd8e540e9d8babdca369b2af4106961e74652687e53d5bc7887b  no-require-lilo.patch
7bb07eb22002cc48caf0cd55d17ce4097aa583e0ca4048c11c92e1519761b2ae982ffe98311543d4b0dfc991c8bc411b2e1c7be9488b6c6f19ffaa08e69e2f47  no-autoload-fb.conf
b0e0634c84440a480be208da5157b03cb914790faab08fd3fdc2faeceed2c0a03d52c0e029084190708190f80028648923c4fd6feb11ec68ab4f740488161b0a  mkimage-missing-not-fatal.patch"