[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#321167: linux-image: say the difference vs. kernel-image



reasign 321167 linux-2.6
thanks

On Thu, Aug 04, 2005 at 04:36:16AM +0800, Dan Jacobson wrote:
> Package: linux-image-2.6.12-1-686
> Severity: wishlist
> 
> Please in the Description of all the linux-*-2.6 packages, e.g.,
> linux-doc-2.6.12
> linux-headers-2.6.12-1-686
> linux-image-2.6.12-1-686
> linux-patch-debian-2.6.12
> linux-tree-2.6.12
> i.e., packages residing in pool/main/l/linux-2.6/,
> say how they differ from the kernel-* packages, e.g.,
> kernel-image-2.6.*
> so the user knows before starting any downloads.
> 
> Perhaps also in the kernel-* Descriptions, mention the difference vs.
> linux-* too.

They are replacements for those packages. 
The names have been changed to be consistent with
the naming of other kernels (e.g. hurd and Freebsd) that
are likely to be added to Debain soon.

Adding a note to this affect to the long descriptions seems
reasonable, can you provide a patch against the templates that 
are used to create the control files?

They are in SVN at debian-kernel/svn-2.6/source/linux-2.6/debian/templates
on svn.debian.org. And I have attached the latest versions for your
convenience.

Thanks

-- 
Horms
Package: linux-headers-@subarch@@version@-@abiname@
Architecture: alpha amd64 arm hppa i386 ia64 m68k powerpc s390 sparc
Section: devel
Priority: optional
Depends: coreutils | fileutils (>= 4.0)
Provides: linux-headers, linux-headers-@major@
Description: Common architecture-specific header files for Linux kernel @version@
 This package provides the (sub)architecture-specific common kernel header files
 for Linux kernel version @version@, generally used for building out-of-tree
 kernel modules. To obtain a complete set of headers you also need to install
 the linux-headers-@version@-@abiname@-(flavour) package, matching the
 flavour of the kernel you intend the build for. To obtain such a set for the
 currently running kernel it is sufficient to run a command

 apt-get install linux-headers-@version@-@abiname@-$(uname -r)
 .
 and it will be unpacked in /usr/src/linux-headers-@version@-@abiname@-(flavour).
#!/bin/sh
#
# This is the make-kpkg hook file, which runs when make-kpkg is invoked
# (from debian/rules) to create the flavour-independent kernel-headers
# package. The major tasks it performs is removing unneeded
# include/asm-* directories. 
#
set -e

# The scripts/ directory should be supplied for each flavour, since some
# archs do some *very* strange things...
rm -rf scripts

# XXX: once we're using a linux-headers-$(version)-$(debnum) that's Arch: all,
# we'll want to drop this bit of code.  The asm-* directories should remain.

remove=
cd include
for i in asm-*; do
	case ${i#asm-} in
	generic | @headers_dirs@)
		;;
	*)
		remove="$remove $i"
		;;
	esac
done
${remove:+rm -r $remove}
Source: linux-@major@
Section: devel
Priority: optional
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Uploaders: Andres Salomon <dilinger@debian.org>
Standards-Version: 3.6.1.0
Build-Depends: gcc (>= 4:4.0) [!sparc !alpha], gcc-3.3 [sparc alpha], debhelper (>= 4.1.0), module-init-tools, dpkg-dev (>= 1.10.23), debianutils (>= 1.6), bzip2, console-tools [!s390], sparc-utils [sparc], kernel-package (>= 9.004)
Build-Depends-Indep: docbook-utils, gs, transfig, xmlto, dh-kpatches (>= 0.99.3)
#
# If you would like to change the arch-specific Depends, Suggests,
# or Recommends, have a look at the debian/bin/gencontrol file. Note
# that arch_depends and arch_suggests substitutions will start with
# a comma and a space if they are non-empty.
#
Package: linux-image-@subarch@@version@-@abiname@-@flavour@
Architecture: @arch@
Section: base
Priority: optional
Provides: linux-image, linux-image-@major@
Depends: initrd-tools (>= 0.1.78), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)@arch_depends@
Conflicts: hotplug (<< 0.0.20040105-1)
Suggests: fdutils, linux-doc-@version@ | linux-source-@version@@arch_suggests@
@arch_recommends@
Description: Linux kernel @version@ image on @class@ machines
 This package provides the binary image and pre-built loadable modules for
 Linux kernel @version@ on @class@ machines.
Package: linux-source-@version@
Architecture: all
Section: devel
Priority: optional
Provides: linux-source, linux-source-@major@
Depends: binutils, bzip2, coreutils | fileutils (>= 4.0)
Recommends: libc6-dev | libc-dev, gcc, make
Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-mt-dev
Description: Linux kernel source for version @version@ with Debian patches
 This package provides the source code for the Linux kernel version @version@.
 .
 If you wish to use this package to create a custom Linux kernel, then
 it is suggested that you investigate the package kernel-package,
 which has been designed to ease the task of creating kernel image
 packages. 

Package: linux-doc-@version@
Architecture: all
Section: doc
Priority: optional
Provides: linux-doc-@major@
Depends: coreutils | fileutils (>= 4.0)
Description: Linux kernel specific documentation for version @version@
 This package provides the various README files and HTML documentation for
 the Linux kernel version @version@. Plenty of information, including the
 descriptions of varios kernel subsystems, filesystems, driver-specific 
 notes and the like. Consult the file
 .
 /usr/share/doc/linux-doc-@version@/Documentation/00-INDEX
 .
 for the detailed description of the contents.

Package: linux-patch-debian-@version@
Architecture: all
Section: devel
Priority: optional
Depends: bzip2, ${kpatch:Depends}
Suggests: linux-source-@version@
Description: Debian patches to version @version@ of the Linux kernel
 This package includes the patches used to produce the prepackaged
 linux-source-@version@ package, as well as architecture-specific
 patches. Note that these patches do NOT apply against a pristine
 Linux @version@ kernel but only against the kernel tarball
 linux-source-@version@_@version@.orig.tar.gz from the Debian archive.
 
Package: linux-tree-@version@
Architecture: all
Section: devel
Priority: optional
Depends: linux-patch-debian-@version@ (= @srcver@), @lt_depends@
Provides: @lt_provides@
Description: Linux kernel source tree for building Debian kernel images
 This meta package is used as a build dependency of Debian
 linux-image packages to prevent a version discrepancy between
 the linux-image and corresponding linux-sources packages in the
 fast-moving unstable archive. The package's dependency relations
 are structured so that a linux-image package's build
 dependencies can always be satisfied, even if the linux-source
 package that had been used to compile the image has been
 superseeded by a newer Debian revision since the last build.
 .
 The package provides a list of virtual packages, corresponding to
 Debian revisions of a linux-source package. The Debian
 linux-patch contains the information needed to roll back the
 current linux-source to any of the revisions identified by the
 provided virtual packages. Therefore, the linux-tree package
 ensures the availability of the Linux kernel source tree corresponding
 to each of the virtual packages listed.
 .
 The package serves no purpose outside of the Debian build and
 archive infrastructure.
#!/bin/sh
#
# This is the hook file executed by make-kpkg in the end of creation
# of the linux-image for a particular flavour. The major task it performs
# is the creation of the flavour-specific linux-headers package.
#
set -e

debhelper_pre() {
	dh_clean -k --package="$1"
	dh_installdirs --package="$1"
}

debhelper_post() {
	dh_installdocs --package="$1"
	dh_installchangelogs --package="$1"
	dh_compress --package="$1"
	dh_fixperms --package="$1"
	dh_installdeb --package="$1"
	dh_gencontrol --package="$1"
	dh_md5sums --package="$1"
	dh_builddeb --package="$1"
}
# The version which ends up here is something like
# $(version)-$(abiname)-$(flavour) and debnum is just
# -$(abiname), so that the variables get the values:
# suffix=$(flavour)
# prefix=$(version)-$(abiname)
# prefix is then used to form a destination directory
# to link to. For cases with subarch we need to link
# to linux-headers-$(subarch)-$(version)-$(abiname),
# not just linux-headers-$(version)-$(abiname). Note
# that the append_subarch substitution must contain a
# trailing dash, if it is non-empty.
#
append='@append_subarch@'
suffix=${version#*$debnum-}
prefix=${append}${version%%-*}${debnum}
pkg=linux-headers-$version
top=$PWD/debian/$pkg
dir=$top/usr/src/linux-headers-$version
#
# Here we need to find the kernel architecture which
# is appropriate for the current flavour. It is available
# in kernel-package as KERNEL_ARCH. Cleanest way is to get
# make-kpkg export it to this script. 
# 
# Currently we just use the fact that in the build directory
# the symlink include/asm must point to include/asm-${arch}
#
arch=$(readlink include/asm)
arch=$(basename "${arch}")
arch="${arch#asm-}"

debhelper_pre $pkg

#
# Stuff below is ugly as hell, but does the trick so I'm not
# touching it until we can invent something better.
#
mkdir -p $dir/include/linux
cp -a .config $dir
echo $debnum-$suffix > $dir/.extraversion
cp -a Module.symvers $dir

find . -mindepth 1 -maxdepth 1 \
	! -name debian -a ! -name Documentation -a ! -name include -a \
	! -name DEBIAN -a ! -name scripts -a ! -name '.*' -a \( \
	-name Makefile -o -type d \) \
	-printf "../linux-headers-$prefix/%f\n" |
	xargs ln -s --target-directory="$dir"

cp -a scripts $dir
cd include
find . -mindepth 1 -maxdepth 1 \
	! -name config -a ! -name linux -a \( \
	! -name 'asm-*' -o -name asm-generic -o -name asm-${arch} \) \
	-printf "../../linux-headers-$prefix/include/%f\n" |
	xargs ln -s --target-directory=$dir/include
cp -a config $dir/include
ln -sf asm-${arch} $dir/include/asm
find linux -mindepth 1 -maxdepth 1 \
	! -name autoconf.h -a ! -name compile.h -a ! -name version.h \
	-printf "../../../linux-headers-$prefix/include/linux/%f\n" |
	xargs ln -s --target-directory=$dir/include/linux
cp -a linux/autoconf.h linux/compile.h \
	linux/version.h $dir/include/linux
cd ..

mkdir -p $top/lib/modules/$version
ln -s /usr/src/linux-headers-$version $top/lib/modules/$version/build

debhelper_post $pkg

#
# Check whether we should force any modules to be available
# on the initrd.
#
cd ${IMAGE_TOP}/lib/modules/${version}
modules='@initrd_modules@'
if [ -n "${modules}" ]; then
  mkdir initrd
  for i in ${modules}; do
    if [ -f "${i}" ]; then
      ln "${i}" initrd
    fi
  done
fi

# Execute any extra post-install command provided by the arch/subarch/flavour
if [ '@extra_postinstall_command@' ]; then
  @extra_postinstall_command@
fi

#
# Clean up the build and source symlinks
#
if [ -L build ]; then
  rm -f build
fi
if [ -L source ]; then
  rm -f source
fi
Package: linux-headers-@subarch@@version@-@abiname@-@flavour@
Architecture: @arch@
Section: devel
Priority: optional
Depends: coreutils | fileutils (>= 4.0), linux-headers-@subarch@@version@-@abiname@
Provides: linux-headers, linux-headers-@major@
Description: Architecture-specific header files for Linux kernel @version@ on @class@ machines
 This package provides the architecture-specific kernel header files
 for Linux kernel @version@ on @class@ machines, generally
 used for building out-of-tree kernel modules.  These files are going to be
 installed into /usr/src/linux-headers-@subarch@@version@-@abiname@-@flavour@, and can
 be used for building modules that load into the kernel provided by the
 linux-image-@subarch@@version@-@abiname@-@flavour@ package.

Reply to: