Skip to content
Snippets Groups Projects
Select Git revision
  • f1f0f330b1d0ac1bcc38d7c84d439f4fde341a9c
  • master default
  • b4/phy-realtek-clock-fix
  • b4/rk3576-rock4d-phy-timings
  • b4/dw-wdt-fix-initial-timeout
  • radxa-v6.1-vendor-kernel
  • b4/fusb302-race-condition-fix
  • b4/rk3576-rock4d-phy-handling-fixes
  • b4/rk3588-evb1-hdmi-rx
  • b4/rk3576-fix-fspi-pmdomain
  • b4/usbc-for-rock5bp
  • b4/rock5bp-for-upstream
  • rockchip-devel
  • rk3588-test
  • rk3588-test-vendor-cam
  • lf-6.6.y_6.6.23-2.0.0_var01-panfrost
  • rk3588-linked-clk-gate-for-upstream
  • rk3588-gpu-pwr-domain-for-upstream
  • rk3588-rock5b-usbc-for-upstream
  • rk3588-evb1-for-upstream
  • imx95-upstream-with-vendor-display-stack
  • v5.17
  • v5.17-rc8
  • v5.17-rc7
  • v5.17-rc6
  • v5.17-rc5
  • v5.17-rc4
  • v5.17-rc3
  • v5.17-rc2
  • v5.17-rc1
  • v5.16
  • v5.16-rc8
  • v5.16-rc7
  • v5.16-rc6
  • v5.16-rc5
  • v5.16-rc4
  • v5.16-rc3
  • v5.16-rc2
  • v5.16-rc1
  • v5.15
  • v5.15-rc7
41 results

proc.c

Blame
  • headers_install.sh 1.28 KiB
    #!/bin/sh
    
    if [ $# -lt 2 ]
    then
    	echo "Usage: headers_install.sh OUTDIR SRCDIR [FILES...]"
    	echo
    	echo "Prepares kernel header files for use by user space, by removing"
    	echo "all compiler.h definitions and #includes, removing any"
    	echo "#ifdef __KERNEL__ sections, and putting __underscores__ around"
    	echo "asm/inline/volatile keywords."
    	echo
    	echo "OUTDIR: directory to write each userspace header FILE to."
    	echo "SRCDIR: source directory where files are picked."
    	echo "FILES:  list of header files to operate on."
    
    	exit 1
    fi
    
    # Grab arguments
    
    OUTDIR="$1"
    shift
    SRCDIR="$1"
    shift
    
    # Iterate through files listed on command line
    
    FILE=
    trap 'rm -f "$OUTDIR/$FILE" "$OUTDIR/$FILE.sed"' EXIT
    for i in "$@"
    do
    	FILE="$(basename "$i")"
    	sed -r \
    		-e 's/([ \t(])(__user|__force|__iomem)[ \t]/\1/g' \
    		-e 's/__attribute_const__([ \t]|$)/\1/g' \
    		-e 's@^#include <linux/compiler.h>@@' \
    		-e 's/(^|[^a-zA-Z0-9])__packed([^a-zA-Z0-9_]|$)/\1__attribute__((packed))\2/g' \
    		-e 's/(^|[ \t(])(inline|asm|volatile)([ \t(]|$)/\1__\2__\3/g' \
    		-e 's@#(ifndef|define|endif[ \t]*/[*])[ \t]*_UAPI@#\1 @' \
    		"$SRCDIR/$i" > "$OUTDIR/$FILE.sed" || exit 1
    	scripts/unifdef -U__KERNEL__ -D__EXPORTED_HEADERS__ "$OUTDIR/$FILE.sed" \
    		> "$OUTDIR/$FILE"
    	[ $? -gt 1 ] && exit 1
    	rm -f "$OUTDIR/$FILE.sed"
    done
    trap - EXIT