~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/scripts/package/mkdebian

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /scripts/package/mkdebian (Version linux-6.12-rc7) and /scripts/package/mkdebian (Version linux-2.6.0)


  1 #!/bin/sh                                         
  2 #                                                 
  3 # Copyright 2003 Wichert Akkerman <wichert@wigg    
  4 #                                                 
  5 # Simple script to generate a debian/ director    
  6                                                   
  7 set -eu                                           
  8                                                   
  9 is_enabled() {                                    
 10         grep -q "^$1=y" include/config/auto.co    
 11 }                                                 
 12                                                   
 13 if_enabled_echo() {                               
 14         if is_enabled "$1"; then                  
 15                 echo -n "$2"                      
 16         elif [ $# -ge 3 ]; then                   
 17                 echo -n "$3"                      
 18         fi                                        
 19 }                                                 
 20                                                   
 21 set_debarch() {                                   
 22         if [ "${KBUILD_DEBARCH:+set}" ]; then     
 23                 debarch="$KBUILD_DEBARCH"         
 24                 return                            
 25         fi                                        
 26                                                   
 27         # Attempt to find the correct Debian a    
 28         case "$UTS_MACHINE" in                    
 29         i386|alpha|m68k|riscv*)                   
 30                 debarch="$UTS_MACHINE" ;;         
 31         x86_64)                                   
 32                 debarch=amd64 ;;                  
 33         sparc*)                                   
 34                 debarch=sparc$(if_enabled_echo    
 35         s390*)                                    
 36                 debarch=s390x ;;                  
 37         ppc*)                                     
 38                 if is_enabled CONFIG_64BIT; th    
 39                         debarch=ppc64$(if_enab    
 40                 else                              
 41                         debarch=powerpc$(if_en    
 42                 fi                                
 43                 ;;                                
 44         parisc*)                                  
 45                 debarch=hppa ;;                   
 46         mips*)                                    
 47                 if is_enabled CONFIG_CPU_LITTL    
 48                         debarch=mips$(if_enabl    
 49                 elif is_enabled CONFIG_CPU_MIP    
 50                         debarch=mips$(if_enabl    
 51                 else                              
 52                         debarch=mips              
 53                 fi                                
 54                 ;;                                
 55         aarch64|arm64)                            
 56                 debarch=arm64 ;;                  
 57         arm*)                                     
 58                 if is_enabled CONFIG_AEABI; th    
 59                         debarch=arm$(if_enable    
 60                 else                              
 61                         debarch=arm               
 62                 fi                                
 63                 ;;                                
 64         openrisc)                                 
 65                 debarch=or1k ;;                   
 66         sh)                                       
 67                 if is_enabled CONFIG_CPU_SH3;     
 68                         debarch=sh3$(if_enable    
 69                 elif is_enabled CONFIG_CPU_SH4    
 70                         debarch=sh4$(if_enable    
 71                 fi                                
 72                 ;;                                
 73         esac                                      
 74         if [ -z "$debarch" ]; then                
 75                 debarch=$(dpkg-architecture -q    
 76                 echo "" >&2                       
 77                 echo "** ** **  WARNING  ** **    
 78                 echo "" >&2                       
 79                 echo "Your architecture doesn'    
 80                 echo "Debian userspace archite    
 81                 echo "Falling back to the curr    
 82                 echo "Please add support for $    
 83                 echo "" >&2                       
 84         fi                                        
 85 }                                                 
 86                                                   
 87 # Create debian/source/ if it is a source pack    
 88 gen_source ()                                     
 89 {                                                 
 90         mkdir -p debian/source                    
 91                                                   
 92         echo "3.0 (quilt)" > debian/source/for    
 93                                                   
 94         {                                         
 95                 echo "diff-ignore"                
 96                 echo "extend-diff-ignore = .*"    
 97         } > debian/source/local-options           
 98                                                   
 99         # Add .config as a patch                  
100         mkdir -p debian/patches                   
101         {                                         
102                 echo "Subject: Add .config"       
103                 echo "Author: ${maintainer}"      
104                 echo                              
105                 echo "--- /dev/null"              
106                 echo "+++ linux/.config"          
107                 diff -u /dev/null "${KCONFIG_C    
108         } > debian/patches/config.patch           
109         echo config.patch > debian/patches/ser    
110                                                   
111         "${srctree}/scripts/package/gen-diff-p    
112         if [ -s debian/patches/diff.patch ]; t    
113                 sed -i "                          
114                         1iSubject: Add local d    
115                         1iAuthor: ${maintainer    
116                         1i                        
117                 " debian/patches/diff.patch       
118                                                   
119                 echo diff.patch >> debian/patc    
120         else                                      
121                 rm -f debian/patches/diff.patc    
122         fi                                        
123 }                                                 
124                                                   
125 rm -rf debian                                     
126 mkdir debian                                      
127                                                   
128 user=${KBUILD_BUILD_USER:-$(id -nu)}              
129 name=${DEBFULLNAME:-${user}}                      
130 if [ "${DEBEMAIL:+set}" ]; then                   
131         email=${DEBEMAIL}                         
132 else                                              
133         buildhost=${KBUILD_BUILD_HOST:-$(hostn    
134         email="${user}@${buildhost}"              
135 fi                                                
136 maintainer="${name} <${email}>"                   
137                                                   
138 while [ $# -gt 0 ]; do                            
139         case "$1" in                              
140         --need-source)                            
141                 gen_source                        
142                 shift                             
143                 ;;                                
144         *)                                        
145                 break                             
146                 ;;                                
147         esac                                      
148 done                                              
149                                                   
150 # Some variables and settings used throughout     
151 version=$KERNELRELEASE                            
152 if [ "${KDEB_PKGVERSION:+set}" ]; then            
153         packageversion=$KDEB_PKGVERSION           
154 else                                              
155         packageversion=$(${srctree}/scripts/se    
156 fi                                                
157 sourcename=${KDEB_SOURCENAME:-linux-upstream}     
158                                                   
159 if [ "$ARCH" = "um" ] ; then                      
160         packagename=user-mode-linux               
161 else                                              
162         packagename=linux-image                   
163 fi                                                
164                                                   
165 debarch=                                          
166 set_debarch                                       
167                                                   
168 # Try to determine distribution                   
169 if [ "${KDEB_CHANGELOG_DIST:+set}" ]; then        
170         distribution=$KDEB_CHANGELOG_DIST         
171 # In some cases lsb_release returns the codena    
172 elif distribution=$(lsb_release -cs 2>/dev/nul    
173         : # nothing to do in this case            
174 else                                              
175         distribution="unstable"                   
176         echo >&2 "Using default distribution o    
177         echo >&2 "Install lsb-release or set \    
178 fi                                                
179                                                   
180 echo $debarch > debian/arch                       
181                                                   
182 host_gnu=$(dpkg-architecture -a "${debarch}" -    
183                                                   
184 # Generate a simple changelog template            
185 cat <<EOF > debian/changelog                      
186 $sourcename ($packageversion) $distribution; u    
187                                                   
188   * Custom built Linux kernel.                    
189                                                   
190  -- $maintainer  $(date -R)                       
191 EOF                                               
192                                                   
193 # Generate a control file                         
194 cat <<EOF > debian/control                        
195 Source: $sourcename                               
196 Section: kernel                                   
197 Priority: optional                                
198 Maintainer: $maintainer                           
199 Rules-Requires-Root: no                           
200 Build-Depends: debhelper-compat (= 12)            
201 Build-Depends-Arch: bc, bison, cpio, flex,        
202  gcc-${host_gnu} <!pkg.${sourcename}.nokernelh    
203  kmod, libelf-dev:native,                         
204  libssl-dev:native, libssl-dev <!pkg.${sourcen    
205  rsync                                            
206 Homepage: https://www.kernel.org/                 
207                                                   
208 Package: $packagename-$version                    
209 Architecture: $debarch                            
210 Description: Linux kernel, version $version       
211  This package contains the Linux kernel, modul    
212  files, version: $version.                        
213 EOF                                               
214                                                   
215 if [ "${SRCARCH}" != um ]; then                   
216 cat <<EOF >> debian/control                       
217                                                   
218 Package: linux-libc-dev                           
219 Section: devel                                    
220 Provides: linux-kernel-headers                    
221 Architecture: $debarch                            
222 Description: Linux support headers for userspa    
223  This package provides userspaces headers from    
224  are used by the installed headers for GNU gli    
225 Multi-Arch: same                                  
226 EOF                                               
227                                                   
228 if is_enabled CONFIG_MODULES; then                
229 cat <<EOF >> debian/control                       
230                                                   
231 Package: linux-headers-$version                   
232 Architecture: $debarch                            
233 Build-Profiles: <!pkg.${sourcename}.nokernelhe    
234 Description: Linux kernel headers for $version    
235  This package provides kernel header files for    
236  .                                                
237  This is useful for people who need to build e    
238 EOF                                               
239 fi                                                
240 fi                                                
241                                                   
242 if is_enabled CONFIG_DEBUG_INFO; then             
243 cat <<EOF >> debian/control                       
244                                                   
245 Package: linux-image-$version-dbg                 
246 Section: debug                                    
247 Architecture: $debarch                            
248 Build-Profiles: <!pkg.${sourcename}.nokerneldb    
249 Description: Linux kernel debugging symbols fo    
250  This package will come in handy if you need t    
251  all the necessary debug symbols for the kerne    
252 EOF                                               
253 fi                                                
254                                                   
255 cat <<EOF > debian/rules.vars                     
256 ARCH := ${ARCH}                                   
257 KERNELRELEASE := ${KERNELRELEASE}                 
258 EOF                                               
259                                                   
260 cp "${srctree}/scripts/package/debian/copyrigh    
261 cp "${srctree}/scripts/package/debian/rules" d    
262                                                   
263 exit 0                                            
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php