macaw/x86/support/make_linux_syscalls
2017-11-22 14:08:49 -08:00
..
asm_syscalls.h.cpp Add x86 specific code. 2017-09-27 15:54:43 -07:00
Main.hs Merge branch 'master' of github.com:GaloisInc/macaw 2017-11-22 14:08:49 -08:00
README Add x86 specific code. 2017-09-27 15:54:43 -07:00
syscall_64.tbl Add x86 specific code. 2017-09-27 15:54:43 -07:00
syscalls.h.cpp Add x86 specific code. 2017-09-27 15:54:43 -07:00

This directory contains a script to scrape the Linux header files to
produce types for most system calls.

From the build directory, run the following for FILE in {source/arch/x86/include/asm/syscalls.h, source/include/linux/syscalls.h}

sed -i 's/#define CONFIG_ARCH_SUPPORTS_INT128.*//' include/generated/autoconf.h && gcc -Wp,-MD,init/.main.o.d  -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/4.9/include -I/usr/src/linux-headers-lbm- -I/usr/src/linux-source-3.19.0/linux-source-3.19.0/arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated  -I/usr/src/linux-source-3.19.0/linux-source-3.19.0/include -Iinclude -I/usr/src/linux-source-3.19.0/linux-source-3.19.0/arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I/usr/src/linux-source-3.19.0/linux-source-3.19.0/include/uapi -Iinclude/generated/uapi -include /usr/src/linux-source-3.19.0/linux-source-3.19.0/include/linux/kconfig.h -Iubuntu/include -I/usr/src/linux-source-3.19.0/linux-source-3.19.0/ubuntu/include  -I/usr/src/linux-source-3.19.0/linux-source-3.19.0/init -Iinit -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -m64 -mno-80387 -mno-fp-ret-in-387 -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -g -gdwarf-4 -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time  -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(main)"  -D"KBUILD_MODNAME=KBUILD_STR(main)" -E FILE > FILE.cpp

sed 's/stub_/sys_/' source/arch/x86/syscall_64.tbl > syscall_64.tbl