diff --git a/core/linux-api-headers-pb/PKGBUILD b/core/linux-api-headers-pb/PKGBUILD new file mode 100644 index 000000000..ee71f4aea --- /dev/null +++ b/core/linux-api-headers-pb/PKGBUILD @@ -0,0 +1,41 @@ +# Maintainer: Mike Staszel <mikestaszel@plugbox.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc + +pkgname=linux-api-headers +pkgver=2.6.33.3 +_basever=2.6.33 +pkgrel=1 +pkgdesc="Kernel headers sanitized for use in userspace" +arch=('arm') +url="http://www.gnu.org/software/libc" +license=('GPL') +provides=("kernel-headers=${pkgver}") +conflicts=("glibc<=2.10.1-4" 'kernel-headers') +replaces=('kernel-headers') +source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${_basever}.tar.bz2 + http://www.kernel.org/pub/linux/kernel/v2.6/patch-${pkgver}.bz2 + scsi.patch) +md5sums=('c3883760b18d50e8d78819c54d579b00' + 'dd6cd6a3aea70a2d90d1e8fd6abc3b45' + 'b6d05566fcfe07770d9386f0588f8758') + +build() { + cd ${srcdir}/linux-${_basever} + patch -Np1 -i ${srcdir}/patch-${pkgver} || return 1 + + # fix issues with transition of scsi.h from glibc + patch -Np1 -i ${srcdir}/scsi.patch || return 1 + + make mrproper + make headers_check || return 1 +} + +package() { + cd ${srcdir}/linux-${_basever} + make INSTALL_HDR_PATH=${pkgdir}/usr headers_install + + rm -rf ${pkgdir}/usr/include/drm + + rm -f $(find ${pkgdir} -name .install -or -name ..install.cmd) +} diff --git a/core/linux-api-headers-pb/README b/core/linux-api-headers-pb/README new file mode 100644 index 000000000..84b39fc16 --- /dev/null +++ b/core/linux-api-headers-pb/README @@ -0,0 +1,4 @@ +These, if they help make udev, will replace the With-Linux ones. + +They are exactly the same as the vanilla Arch Linux ones, with +no changes made. diff --git a/core/linux-api-headers-pb/scsi.patch b/core/linux-api-headers-pb/scsi.patch new file mode 100644 index 000000000..f85a3b750 --- /dev/null +++ b/core/linux-api-headers-pb/scsi.patch @@ -0,0 +1,42 @@ +diff -Naur linux-2.6.32-old/include/scsi/scsi.h linux-2.6.32/include/scsi/scsi.h +--- linux-2.6.32-old/include/scsi/scsi.h 2009-12-03 13:51:21.000000000 +1000 ++++ linux-2.6.32/include/scsi/scsi.h 2009-12-12 10:43:11.000000000 +1000 +@@ -145,14 +145,15 @@ + + /* defined in T10 SCSI Primary Commands-2 (SPC2) */ + struct scsi_varlen_cdb_hdr { +- u8 opcode; /* opcode always == VARIABLE_LENGTH_CMD */ +- u8 control; +- u8 misc[5]; +- u8 additional_cdb_length; /* total cdb length - 8 */ ++ __u8 opcode; /* opcode always == VARIABLE_LENGTH_CMD */ ++ __u8 control; ++ __u8 misc[5]; ++ __u8 additional_cdb_length; /* total cdb length - 8 */ + __be16 service_action; + /* service specific data follows */ + }; + ++#ifdef __KERNEL__ + static inline unsigned + scsi_varlen_cdb_length(const void *hdr) + { +@@ -168,6 +169,7 @@ + return (cmnd[0] == VARIABLE_LENGTH_CMD) ? + scsi_varlen_cdb_length(cmnd) : COMMAND_SIZE(cmnd[0]); + } ++#endif + + /* + * SCSI Architecture Model (SAM) Status codes. Taken from SAM-3 draft +@@ -284,8 +286,10 @@ + SCSI_PROTOCOL_UNSPEC = 0xf, /* No specific protocol */ + }; + ++#ifdef __KERNEL__ + /* Returns a human-readable name for the device */ + extern const char * scsi_device_type(unsigned type); ++#endif + + /* + * standard mode-select header prepended to all mode-select commands