^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) #!/bin/sh
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) # Generate atomic headers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) ATOMICDIR=$(dirname $0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) ATOMICTBL=${ATOMICDIR}/atomics.tbl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) LINUXDIR=${ATOMICDIR}/../..
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) cat <<EOF |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) gen-atomic-instrumented.sh asm-generic/atomic-instrumented.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) gen-atomic-long.sh asm-generic/atomic-long.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) gen-atomic-fallback.sh linux/atomic-arch-fallback.h arch_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) gen-atomic-fallback.sh linux/atomic-fallback.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) EOF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) while read script header args; do
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) /bin/sh ${ATOMICDIR}/${script} ${ATOMICTBL} ${args} > ${LINUXDIR}/include/${header}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) HASH="$(sha1sum ${LINUXDIR}/include/${header})"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) HASH="${HASH%% *}"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) printf "// %s\n" "${HASH}" >> ${LINUXDIR}/include/${header}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) done