forked from pool/linux-glibc-devel
		
	- Update to kernel headers 6.16
OBS-URL: https://build.opensuse.org/package/show/Base:System/linux-glibc-devel?expand=0&rev=208
This commit is contained in:
		
							
								
								
									
										23
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | |||||||
|  | ## Default LFS | ||||||
|  | *.7z filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.bsp filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.bz2 filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.gem filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.gz filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.jar filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.lz filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.lzma filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.obscpio filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.oxt filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.pdf filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.png filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.rpm filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.tbz filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.tbz2 filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.tgz filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.ttf filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.txz filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.whl filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.xz filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.zip filter=lfs diff=lfs merge=lfs -text | ||||||
|  | *.zst filter=lfs diff=lfs merge=lfs -text | ||||||
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | .osc | ||||||
							
								
								
									
										74
									
								
								install_all.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								install_all.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,74 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # bash -x $0 linux.git tag | ||||||
|  | set -e | ||||||
|  | kernel=$1 | ||||||
|  | if test $# -ne 2 || ! test -d "$1" || test "$2" = "${2#v}"; then | ||||||
|  |   echo "Usage: ${0##*/} linux.git tag" | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | case $PWD in | ||||||
|  |   *:*) | ||||||
|  |     echo "do not call this in a directory with : - make will fail" | ||||||
|  |     exit 1 | ||||||
|  |     ;; | ||||||
|  | esac | ||||||
|  |  | ||||||
|  | version=${2#v} | ||||||
|  | kernel_dir=linux-$version | ||||||
|  | header_dir="$PWD/linux-glibc-devel-$version" | ||||||
|  | if test -d "$kernel_dir"; then | ||||||
|  |   echo "$kernel_dir exists, remove it first." | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | if ! mkdir "$header_dir"; then | ||||||
|  |   echo "$header_dir exists, remove it first." | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | git clone --single-branch -b "$2" "$1" "$kernel_dir" | ||||||
|  | date=$(git -C "$kernel_dir" cat-file -p "$2" | awk '/^tagger/ { print $(NF-1) }') | ||||||
|  | date -d "@$date" || exit 1 | ||||||
|  | remove="arc csky hexagon microblaze nios2 openrisc sh xtensa um" | ||||||
|  | archs=$(cd "$kernel_dir/arch" && | ||||||
|  | 	  for arch in *; do | ||||||
|  | 	    test -d $arch || continue | ||||||
|  | 	    case " $remove " in *" $arch "*) continue;; esac | ||||||
|  | 	    echo $arch | ||||||
|  | 	  done) | ||||||
|  | pushd "$kernel_dir" | ||||||
|  | for arch in $archs; do | ||||||
|  |   mkdir "$header_dir/$arch" | ||||||
|  |   cp Makefile "$header_dir/$arch" | ||||||
|  |   make O="$header_dir/$arch" headers_install ARCH=$arch | ||||||
|  | done | ||||||
|  | popd | ||||||
|  | pushd "$header_dir" | ||||||
|  | find -type f \( -name ".*.cmd" -o -name Makefile \) -exec rm {} + | ||||||
|  | for arch in $archs; do | ||||||
|  |   cd $arch | ||||||
|  |   #------------------------------------------------------------------- | ||||||
|  |   #Fri Sep  5 10:43:49 CEST 2008 - matz@suse.de | ||||||
|  |  | ||||||
|  |   #- Remove the kernel version of drm headers, they conflict | ||||||
|  |   #  with the libdrm ones, and those are slightly newer. | ||||||
|  |   # | ||||||
|  |   rm -rf usr/include/drm/ | ||||||
|  |   # Remove confusing empty uapi directory | ||||||
|  |   test ! -d usr/include/uapi || rmdir usr/include/uapi | ||||||
|  |   for dir in *; do | ||||||
|  |     case "$dir" in | ||||||
|  |       usr) ;; | ||||||
|  |       *)  | ||||||
|  | 	if test -d "$dir"; then | ||||||
|  | 	  rm -rf "$dir" | ||||||
|  | 	fi | ||||||
|  | 	;; | ||||||
|  |     esac | ||||||
|  |   done | ||||||
|  |   cd .. | ||||||
|  | done | ||||||
|  | popd | ||||||
|  | du -sh "$header_dir" | ||||||
|  | tar -cJf "$header_dir.tar.xz" --owner=root --group=root --mtime="@$date" \ | ||||||
|  |     --sort=name "${header_dir##*/}" | ||||||
|  | touch -d "@$date" "$header_dir.tar.xz" | ||||||
|  | rm -rf "$header_dir" "$kernel_dir" | ||||||
							
								
								
									
										
											BIN
										
									
								
								linux-glibc-devel-6.10.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								linux-glibc-devel-6.10.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										3
									
								
								linux-glibc-devel-6.11.tar.xz
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								linux-glibc-devel-6.11.tar.xz
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | |||||||
|  | version https://git-lfs.github.com/spec/v1 | ||||||
|  | oid sha256:b0802cbaa8f277e86426f4b492bc70c24a7116058634f5e10d03c69ba75d4d8a | ||||||
|  | size 1892520 | ||||||
							
								
								
									
										
											BIN
										
									
								
								linux-glibc-devel-6.12.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								linux-glibc-devel-6.12.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								linux-glibc-devel-6.14.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								linux-glibc-devel-6.14.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								linux-glibc-devel-6.15.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								linux-glibc-devel-6.15.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								linux-glibc-devel-6.16.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								linux-glibc-devel-6.16.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								linux-glibc-devel-6.9.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								linux-glibc-devel-6.9.tar.xz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										5019
									
								
								linux-glibc-devel.changes
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5019
									
								
								linux-glibc-devel.changes
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										180
									
								
								linux-glibc-devel.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										180
									
								
								linux-glibc-devel.spec
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,180 @@ | |||||||
|  | # | ||||||
|  | # spec file for package linux-glibc-devel | ||||||
|  | # | ||||||
|  | # Copyright (c) 2025 SUSE LLC | ||||||
|  | # | ||||||
|  | # All modifications and additions to the file contributed by third parties | ||||||
|  | # remain the property of their copyright owners, unless otherwise agreed | ||||||
|  | # upon. The license for this file, and modifications and additions to the | ||||||
|  | # file, is the same license as for the pristine package itself (unless the | ||||||
|  | # license for the pristine package is not an Open Source License, in which | ||||||
|  | # case the license is the MIT License). An "Open Source License" is a | ||||||
|  | # license that conforms to the Open Source Definition (Version 1.9) | ||||||
|  | # published by the Open Source Initiative. | ||||||
|  |  | ||||||
|  | # Please submit bugfixes or comments via https://bugs.opensuse.org/ | ||||||
|  | # | ||||||
|  |  | ||||||
|  |  | ||||||
|  | Name:           linux-glibc-devel | ||||||
|  | Version:        6.16 | ||||||
|  | Release:        0 | ||||||
|  | Summary:        Linux headers for userspace development | ||||||
|  | License:        GPL-2.0-only | ||||||
|  | Group:          Development/Libraries/C and C++ | ||||||
|  | URL:            http://www.kernel.org/ | ||||||
|  | Source:         %{name}-%{version}.tar.xz | ||||||
|  | Source1:        install_all.sh | ||||||
|  | BuildRequires:  xz | ||||||
|  | # rpm-build requires gettext-tools; ignore this, in order to shorten cycles (we have no translations) | ||||||
|  | #!BuildIgnore:  gettext-tools | ||||||
|  | # glibc-devel requires linux-kernel-headers, which we are in progress of building | ||||||
|  | #!BuildIgnore:  linux-kernel-headers | ||||||
|  | PreReq:         coreutils | ||||||
|  | Provides:       kernel-headers | ||||||
|  | Provides:       linux-kernel-headers = %{version} | ||||||
|  | Obsoletes:      linux-kernel-headers < %{version} | ||||||
|  |  | ||||||
|  | %{lua: | ||||||
|  | function cross_archs() | ||||||
|  |   return "aarch64", "arm", "hppa", "i386", "loongarch64", "m68k", "mips", "ppc64", "ppc64le", "riscv64", "s390x", "sparc", "sparc64", "x86_64" | ||||||
|  | end | ||||||
|  |  | ||||||
|  | function kernel_arch(arch) | ||||||
|  |   local map = { | ||||||
|  |      ["aarch64"] = "arm64", | ||||||
|  |      ["armv6hl"] = "arm", | ||||||
|  |      ["armv7hl"] = "arm", | ||||||
|  |      ["hppa"] = "parisc", | ||||||
|  |      ["i386"] = "x86", | ||||||
|  |      ["i586"] = "x86", | ||||||
|  |      ["i686"] = "x86", | ||||||
|  |      ["loongarch64"] = "loongarch", | ||||||
|  |      ["ppc"] = "powerpc", | ||||||
|  |      ["ppc64"] = "powerpc", | ||||||
|  |      ["ppc64le"] = "powerpc", | ||||||
|  |      ["riscv64"] = "riscv", | ||||||
|  |      ["s390x"] = "s390", | ||||||
|  |      ["sparc64"] = "sparc", | ||||||
|  |      ["x86_64"] = "x86", | ||||||
|  |   } | ||||||
|  |   return map[arch] or arch | ||||||
|  | end | ||||||
|  |  | ||||||
|  | function gcc_target(arch) | ||||||
|  |   local map = { | ||||||
|  |     ["arm"] = "arm-suse-linux-gnueabi", | ||||||
|  |     ["i386"] = "i586-suse-linux", | ||||||
|  |     ["ppc64"] = "powerpc64-suse-linux", | ||||||
|  |     ["ppc64le"] = "powerpc64le-suse-linux", | ||||||
|  |   } | ||||||
|  |   return map[arch] or arch.."-suse-linux" | ||||||
|  | end | ||||||
|  | } | ||||||
|  |  | ||||||
|  | %description | ||||||
|  | This package provides Linux kernel headers, the kernel API description | ||||||
|  | required for compilation of almost all programs. This is the userspace | ||||||
|  | interface; compiling external kernel modules requires | ||||||
|  | kernel-(flavor)-devel, or kernel-syms to pull in all kernel-*-devel, | ||||||
|  | packages, instead. | ||||||
|  |  | ||||||
|  | %{lua: | ||||||
|  |   for i,arch in ipairs({cross_archs()}) do | ||||||
|  |     print(rpm.expand([[ | ||||||
|  |  | ||||||
|  | %package -n cross-]]..arch..[[-%{name} | ||||||
|  | Summary:        Linux headers for ]]..arch..[[ userspace cross development | ||||||
|  | Group:          Development/Libraries/C and C++ | ||||||
|  | BuildArch:      noarch | ||||||
|  |  | ||||||
|  | %description -n cross-]]..arch..[[-%{name} | ||||||
|  | This package provides Linux kernel headers for ]]..arch..[[, the kernel API description | ||||||
|  | required for compilation of almost all programs. | ||||||
|  | ]])) | ||||||
|  |   end} | ||||||
|  |  | ||||||
|  | %prep | ||||||
|  | %setup -q -n %{name}-%{version} | ||||||
|  |  | ||||||
|  | %build | ||||||
|  | for karch in *; do | ||||||
|  |   cd $karch | ||||||
|  |   cat > version.h <<\BOGUS | ||||||
|  | #ifdef __KERNEL__ | ||||||
|  | #error "=======================================================" | ||||||
|  | #error "You should not include %{_includedir}/{linux,asm}/ header" | ||||||
|  | #error "files directly for the compilation of kernel modules." | ||||||
|  | #error "" | ||||||
|  | #error "glibc now uses kernel header files from a well-defined" | ||||||
|  | #error "working kernel version (as recommended by Linus Torvalds)" | ||||||
|  | #error "These files are glibc internal and may not match the" | ||||||
|  | #error "currently running kernel. They should only be" | ||||||
|  | #error "included via other system header files - user space" | ||||||
|  | #error "programs should not directly include <linux/*.h> or" | ||||||
|  | #error "<asm/*.h> as well." | ||||||
|  | #error "" | ||||||
|  | #error "Since Linux 2.6, the kernel module build process has been" | ||||||
|  | #error "updated such that users building modules should not typically" | ||||||
|  | #error "need to specify additional include directories at all." | ||||||
|  | #error "" | ||||||
|  | #error "To build kernel modules, ensure you have the build environment " | ||||||
|  | #error "available either via the kernel-devel and kernel-<flavor>-devel " | ||||||
|  | #error "packages or a properly configured kernel source tree." | ||||||
|  | #error "" | ||||||
|  | #error "Then, modules can be built using:" | ||||||
|  | #error "make -C <path> M=$PWD" | ||||||
|  | #error "" | ||||||
|  | #error "For the currently running kernel there will be a symbolic " | ||||||
|  | #error "link pointing to the build environment located at " | ||||||
|  | #error "/lib/modules/$(uname -r)/build for use as <path>." | ||||||
|  | #error "" | ||||||
|  | #error "If you are seeing this message, your environment is " | ||||||
|  | #error "not configured properly. " | ||||||
|  | #error "" | ||||||
|  | #error "Please adjust the Makefile accordingly." | ||||||
|  | #error "=======================================================" | ||||||
|  | #else | ||||||
|  | BOGUS | ||||||
|  |   # Get LINUX_VERSION_CODE and KERNEL_VERSION directly from kernel | ||||||
|  |   cat usr/include/linux/version.h >> version.h | ||||||
|  |   cat >> version.h <<\BOGUS | ||||||
|  | #endif | ||||||
|  | BOGUS | ||||||
|  |   cd .. | ||||||
|  | done | ||||||
|  |  | ||||||
|  | %install | ||||||
|  | cd %{lua:print(kernel_arch(rpm.expand("%_target_cpu")))} | ||||||
|  | cp -a usr %{buildroot}/ | ||||||
|  | cp -a version.h %{buildroot}%{_includedir}/linux/ | ||||||
|  | cd .. | ||||||
|  | %{lua: | ||||||
|  |   for i,arch in ipairs({cross_archs()}) do | ||||||
|  |     print(rpm.expand([[ | ||||||
|  | sysroot=%{_prefix}/]]..gcc_target(arch)..[[/sys-root | ||||||
|  | mkdir -p %{buildroot}${sysroot}/%{_includedir}/linux/ | ||||||
|  | cd ]]..kernel_arch(arch)..[[ | ||||||
|  |  | ||||||
|  | cp -a usr %{buildroot}${sysroot} | ||||||
|  | cp -a version.h %{buildroot}${sysroot}/%{_includedir}/linux/ | ||||||
|  | cd .. | ||||||
|  | ]])) | ||||||
|  |   end} | ||||||
|  |  | ||||||
|  | %pre -p <lua> | ||||||
|  | link = "%{_includedir}/asm" | ||||||
|  | if posix.readlink(link) then os.remove(link) end | ||||||
|  |  | ||||||
|  | %files | ||||||
|  | %{_includedir}/* | ||||||
|  |  | ||||||
|  | %{lua: | ||||||
|  |   for i,arch in ipairs({cross_archs()}) do | ||||||
|  |     print(rpm.expand([[ | ||||||
|  |  | ||||||
|  | %files -n cross-]]..arch..[[-%{name} | ||||||
|  | %{_prefix}/]]..gcc_target(arch).."\n")) | ||||||
|  |   end} | ||||||
|  |  | ||||||
|  | %changelog | ||||||
		Reference in New Issue
	
	Block a user