diff options
| author | ruki <[email protected]> | 2021-12-11 11:36:12 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-12-11 11:36:12 +0800 |
| commit | db8372e1d50baceb228354a99b2f30035d9b9709 (patch) | |
| tree | f4bff085b5470ef5186396cfb4c3fe2772a6685e | |
| parent | 70705200fcd2fa0af9fd2be89c50c7554d6b4a2b (diff) | |
| parent | 6c4c605b19b38bc34fa3a09e2087e11fe2103484 (diff) | |
Merge pull request #1890 from xmake-io/linuxdriver
add linux driver support
| -rw-r--r-- | .gitignore | 9 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/foo/foo.c (renamed from tests/projects/mdk/hello/src/foo/foo.c) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/ARMCM3.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/ARMCM3.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_armcc.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/cmsis_armcc.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_armclang.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/cmsis_armclang.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_compiler.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/cmsis_compiler.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_version.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/cmsis_version.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/core_cm3.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/core_cm3.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/mpu_armv7.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/mpu_armv7.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/lib/cmsis/system_ARMCM3.h (renamed from tests/projects/mdk/hello/src/lib/cmsis/system_ARMCM3.h) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/main.c (renamed from tests/projects/mdk/hello/src/main.c) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/startup_ARMCM3.s (renamed from tests/projects/mdk/hello/src/startup_ARMCM3.s) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/src/system_ARMCM3.c (renamed from tests/projects/mdk/hello/src/system_ARMCM3.c) | 0 | ||||
| -rw-r--r-- | tests/projects/embed/mdk/hello/xmake.lua (renamed from tests/projects/mdk/hello/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/linux/bpf/minimal/src/minimal.bpf.c (renamed from tests/projects/bpf/minimal/src/minimal.bpf.c) | 0 | ||||
| -rw-r--r-- | tests/projects/linux/bpf/minimal/src/minimal.c (renamed from tests/projects/bpf/minimal/src/minimal.c) | 0 | ||||
| -rw-r--r-- | tests/projects/linux/bpf/minimal/test.lua (renamed from tests/projects/bpf/minimal/test.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/linux/bpf/minimal/xmake.lua (renamed from tests/projects/bpf/minimal/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/linux/driver/hello/src/add.c | 3 | ||||
| -rw-r--r-- | tests/projects/linux/driver/hello/src/hello.c | 23 | ||||
| -rw-r--r-- | tests/projects/linux/driver/hello/xmake.lua | 7 | ||||
| -rw-r--r-- | tests/projects/linux/driver/hello_makefile/Makefile | 15 | ||||
| -rw-r--r-- | tests/projects/linux/driver/hello_makefile/src/add.c | 3 | ||||
| -rw-r--r-- | tests/projects/linux/driver/hello_makefile/src/hello.c | 23 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.c (renamed from tests/projects/wdk/kmdf/ioctl/driver/nonpnp.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.h (renamed from tests/projects/wdk/kmdf/ioctl/driver/nonpnp.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.rc (renamed from tests/projects/wdk/kmdf/ioctl/driver/nonpnp.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/driver/trace.h (renamed from tests/projects/wdk/kmdf/ioctl/driver/trace.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/exe/install.c (renamed from tests/projects/wdk/kmdf/ioctl/exe/install.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/exe/nonpnp.inf (renamed from tests/projects/wdk/kmdf/ioctl/exe/nonpnp.inf) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/exe/testapp.c (renamed from tests/projects/wdk/kmdf/ioctl/exe/testapp.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/localwpp.ini (renamed from tests/projects/wdk/kmdf/ioctl/localwpp.ini) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/public.h (renamed from tests/projects/wdk/kmdf/ioctl/public.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/ioctl/xmake.lua (renamed from tests/projects/wdk/kmdf/ioctl/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/error.c (renamed from tests/projects/wdk/kmdf/serial/error.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/flush.c (renamed from tests/projects/wdk/kmdf/serial/flush.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/immediat.c (renamed from tests/projects/wdk/kmdf/serial/immediat.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/initunlo.c (renamed from tests/projects/wdk/kmdf/serial/initunlo.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/ioctl.c (renamed from tests/projects/wdk/kmdf/serial/ioctl.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/isr.c (renamed from tests/projects/wdk/kmdf/serial/isr.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/log.c (renamed from tests/projects/wdk/kmdf/serial/log.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/log.h (renamed from tests/projects/wdk/kmdf/serial/log.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/modmflow.c (renamed from tests/projects/wdk/kmdf/serial/modmflow.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/openclos.c (renamed from tests/projects/wdk/kmdf/serial/openclos.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/pnp.c (renamed from tests/projects/wdk/kmdf/serial/pnp.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/power.c (renamed from tests/projects/wdk/kmdf/serial/power.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/precomp.h (renamed from tests/projects/wdk/kmdf/serial/precomp.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/precompsrc.c (renamed from tests/projects/wdk/kmdf/serial/precompsrc.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/purge.c (renamed from tests/projects/wdk/kmdf/serial/purge.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/qsfile.c (renamed from tests/projects/wdk/kmdf/serial/qsfile.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/read.c (renamed from tests/projects/wdk/kmdf/serial/read.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/registry.c (renamed from tests/projects/wdk/kmdf/serial/registry.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/serial.h (renamed from tests/projects/wdk/kmdf/serial/serial.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/serial.inx (renamed from tests/projects/wdk/kmdf/serial/serial.inx) | bin | 6212 -> 6212 bytes | |||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/serial.rc (renamed from tests/projects/wdk/kmdf/serial/serial.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/serialp.h (renamed from tests/projects/wdk/kmdf/serial/serialp.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/serlog.mc (renamed from tests/projects/wdk/kmdf/serial/serlog.mc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/trace.h (renamed from tests/projects/wdk/kmdf/serial/trace.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/utils.c (renamed from tests/projects/wdk/kmdf/serial/utils.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/waitmask.c (renamed from tests/projects/wdk/kmdf/serial/waitmask.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/wmi.c (renamed from tests/projects/wdk/kmdf/serial/wmi.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/write.c (renamed from tests/projects/wdk/kmdf/serial/write.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/kmdf/serial/xmake.lua (renamed from tests/projects/wdk/kmdf/serial/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/device.c (renamed from tests/projects/wdk/umdf/echo/driver/device.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/device.h (renamed from tests/projects/wdk/umdf/echo/driver/device.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/driver.c (renamed from tests/projects/wdk/umdf/echo/driver/driver.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/driver.h (renamed from tests/projects/wdk/umdf/echo/driver/driver.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/echoum.inx (renamed from tests/projects/wdk/umdf/echo/driver/echoum.inx) | bin | 3924 -> 3924 bytes | |||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/queue.c (renamed from tests/projects/wdk/umdf/echo/driver/queue.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/driver/queue.h (renamed from tests/projects/wdk/umdf/echo/driver/queue.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/exe/echoapp.cpp (renamed from tests/projects/wdk/umdf/echo/exe/echoapp.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/exe/public.h (renamed from tests/projects/wdk/umdf/echo/exe/public.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/echo/xmake.lua (renamed from tests/projects/wdk/umdf/echo/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/Skeleton.rc (renamed from tests/projects/wdk/umdf/skeleton/Skeleton.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/UMDFSkeleton_OSR.inx (renamed from tests/projects/wdk/umdf/skeleton/UMDFSkeleton_OSR.inx) | bin | 5646 -> 5646 bytes | |||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/UMDFSkeleton_Root.inx (renamed from tests/projects/wdk/umdf/skeleton/UMDFSkeleton_Root.inx) | bin | 3798 -> 3798 bytes | |||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/comsup.cpp (renamed from tests/projects/wdk/umdf/skeleton/comsup.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/comsup.h (renamed from tests/projects/wdk/umdf/skeleton/comsup.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/device.cpp (renamed from tests/projects/wdk/umdf/skeleton/device.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/device.h (renamed from tests/projects/wdk/umdf/skeleton/device.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/dllsup.cpp (renamed from tests/projects/wdk/umdf/skeleton/dllsup.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/driver.cpp (renamed from tests/projects/wdk/umdf/skeleton/driver.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/driver.h (renamed from tests/projects/wdk/umdf/skeleton/driver.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/exports.def (renamed from tests/projects/wdk/umdf/skeleton/exports.def) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/internal.h (renamed from tests/projects/wdk/umdf/skeleton/internal.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/umdf/skeleton/xmake.lua (renamed from tests/projects/wdk/umdf/skeleton/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/SampleDSM.inf (renamed from tests/projects/wdk/wdm/msdsm/SampleDSM.inf) | bin | 5354 -> 5354 bytes | |||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/dsmmain.c (renamed from tests/projects/wdk/wdm/msdsm/dsmmain.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/dsmtrace.mof (renamed from tests/projects/wdk/wdm/msdsm/dsmtrace.mof) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/intrface.c (renamed from tests/projects/wdk/wdm/msdsm/intrface.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/msdsm.h (renamed from tests/projects/wdk/wdm/msdsm/msdsm.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/msdsm.mof (renamed from tests/projects/wdk/wdm/msdsm/msdsm.mof) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/msdsm.rc (renamed from tests/projects/wdk/wdm/msdsm/msdsm.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/msdsmdsm.mof (renamed from tests/projects/wdk/wdm/msdsm/msdsmdsm.mof) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/precomp.h (renamed from tests/projects/wdk/wdm/msdsm/precomp.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/precompsrc.c (renamed from tests/projects/wdk/wdm/msdsm/precompsrc.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/prototypes.h (renamed from tests/projects/wdk/wdm/msdsm/prototypes.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/trace.h (renamed from tests/projects/wdk/wdm/msdsm/trace.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/utils.c (renamed from tests/projects/wdk/wdm/msdsm/utils.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/wmi.c (renamed from tests/projects/wdk/wdm/msdsm/wmi.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/msdsm/xmake.lua (renamed from tests/projects/wdk/wdm/msdsm/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/perfcounters/kcs.c (renamed from tests/projects/wdk/wdm/perfcounters/kcs.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/perfcounters/kcs.h (renamed from tests/projects/wdk/wdm/perfcounters/kcs.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/perfcounters/kcs.man (renamed from tests/projects/wdk/wdm/perfcounters/kcs.man) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/perfcounters/kcs.rc (renamed from tests/projects/wdk/wdm/perfcounters/kcs.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/driver/wdm/perfcounters/xmake.lua (renamed from tests/projects/wdk/wdm/perfcounters/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/app.config (renamed from tests/projects/winsdk/usbview/app.config) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/bang.ico (renamed from tests/projects/winsdk/usbview/bang.ico) | bin | 1846 -> 1846 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/codeanalysis.h (renamed from tests/projects/winsdk/usbview/codeanalysis.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/debug.c (renamed from tests/projects/winsdk/usbview/debug.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/devnode.c (renamed from tests/projects/winsdk/usbview/devnode.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/dispaud.c (renamed from tests/projects/winsdk/usbview/dispaud.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/display.c (renamed from tests/projects/winsdk/usbview/display.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/dispvid.c (renamed from tests/projects/winsdk/usbview/dispvid.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/enum.c (renamed from tests/projects/winsdk/usbview/enum.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/h264.c (renamed from tests/projects/winsdk/usbview/h264.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/h264.h (renamed from tests/projects/winsdk/usbview/h264.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/hub.ico (renamed from tests/projects/winsdk/usbview/hub.ico) | bin | 766 -> 766 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/langidlist.h (renamed from tests/projects/winsdk/usbview/langidlist.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/monitor.ico (renamed from tests/projects/winsdk/usbview/monitor.ico) | bin | 10134 -> 10134 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/port.ico (renamed from tests/projects/winsdk/usbview/port.ico) | bin | 766 -> 766 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/resource.h (renamed from tests/projects/winsdk/usbview/resource.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/split.cur (renamed from tests/projects/winsdk/usbview/split.cur) | bin | 326 -> 326 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/ssport.ico (renamed from tests/projects/winsdk/usbview/ssport.ico) | bin | 766 -> 766 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/ssusb.ico (renamed from tests/projects/winsdk/usbview/ssusb.ico) | bin | 766 -> 766 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/usb.ico (renamed from tests/projects/winsdk/usbview/usb.ico) | bin | 766 -> 766 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/usbdesc.h (renamed from tests/projects/winsdk/usbview/usbdesc.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/usbschema.hpp (renamed from tests/projects/winsdk/usbview/usbschema.hpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/usbviddesc.h (renamed from tests/projects/winsdk/usbview/usbviddesc.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/uvcdesc.h (renamed from tests/projects/winsdk/usbview/uvcdesc.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/uvcview.c (renamed from tests/projects/winsdk/usbview/uvcview.c) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/uvcview.h (renamed from tests/projects/winsdk/usbview/uvcview.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/uvcview.rc (renamed from tests/projects/winsdk/usbview/uvcview.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/vndrlist.h (renamed from tests/projects/winsdk/usbview/vndrlist.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/xmake.lua (renamed from tests/projects/winsdk/usbview/xmake.lua) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/xmlhelper.cpp (renamed from tests/projects/winsdk/usbview/xmlhelper.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/usbview/xmlhelper.h (renamed from tests/projects/winsdk/usbview/xmlhelper.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/main.cpp (renamed from tests/projects/winsdk/windemo/main.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/resource.h (renamed from tests/projects/winsdk/windemo/resource.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/small.ico (renamed from tests/projects/winsdk/windemo/small.ico) | bin | 23558 -> 23558 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/stdafx.cpp (renamed from tests/projects/winsdk/windemo/stdafx.cpp) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/stdafx.h (renamed from tests/projects/winsdk/windemo/stdafx.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/targetver.h (renamed from tests/projects/winsdk/windemo/targetver.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/test (renamed from tests/projects/winsdk/windemo/test) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/test.h (renamed from tests/projects/winsdk/windemo/test.h) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/test.ico (renamed from tests/projects/winsdk/windemo/test.ico) | bin | 23558 -> 23558 bytes | |||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/test.rc (renamed from tests/projects/winsdk/windemo/test.rc) | 0 | ||||
| -rw-r--r-- | tests/projects/windows/winsdk/windemo/xmake.lua (renamed from tests/projects/winsdk/windemo/xmake.lua) | 0 | ||||
| -rw-r--r-- | xmake/core/project/target.lua | 13 | ||||
| -rw-r--r-- | xmake/rules/platform/linux/driver/driver_modules.lua | 245 | ||||
| -rw-r--r-- | xmake/rules/platform/linux/driver/xmake.lua | 30 |
151 files changed, 364 insertions, 7 deletions
diff --git a/.gitignore b/.gitignore index 7107445a1..b9f47f1b4 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,12 @@ compile_commands.json /scripts/rpmbuild/SRPMS/* !/xmake/actions/build/ + +# for linux driver +*.o +*.ko +*.mod +.*.cmd +*.mod.c +Module.symvers +modules.order diff --git a/tests/projects/mdk/hello/src/foo/foo.c b/tests/projects/embed/mdk/hello/src/foo/foo.c index e51afb553..e51afb553 100644 --- a/tests/projects/mdk/hello/src/foo/foo.c +++ b/tests/projects/embed/mdk/hello/src/foo/foo.c diff --git a/tests/projects/mdk/hello/src/lib/cmsis/ARMCM3.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/ARMCM3.h index 44c0c23f4..44c0c23f4 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/ARMCM3.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/ARMCM3.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_armcc.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_armcc.h index a955d4713..a955d4713 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_armcc.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_armcc.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_armclang.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_armclang.h index 691141774..691141774 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_armclang.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_armclang.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_compiler.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_compiler.h index adbf296f1..adbf296f1 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_compiler.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_compiler.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_version.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_version.h index 2f048e455..2f048e455 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/cmsis_version.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/cmsis_version.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/core_cm3.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/core_cm3.h index 74fb87e5c..74fb87e5c 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/core_cm3.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/core_cm3.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/mpu_armv7.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/mpu_armv7.h index d9eedf81a..d9eedf81a 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/mpu_armv7.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/mpu_armv7.h diff --git a/tests/projects/mdk/hello/src/lib/cmsis/system_ARMCM3.h b/tests/projects/embed/mdk/hello/src/lib/cmsis/system_ARMCM3.h index 5d1237770..5d1237770 100644 --- a/tests/projects/mdk/hello/src/lib/cmsis/system_ARMCM3.h +++ b/tests/projects/embed/mdk/hello/src/lib/cmsis/system_ARMCM3.h diff --git a/tests/projects/mdk/hello/src/main.c b/tests/projects/embed/mdk/hello/src/main.c index 28d909a18..28d909a18 100644 --- a/tests/projects/mdk/hello/src/main.c +++ b/tests/projects/embed/mdk/hello/src/main.c diff --git a/tests/projects/mdk/hello/src/startup_ARMCM3.s b/tests/projects/embed/mdk/hello/src/startup_ARMCM3.s index efe40c1e3..efe40c1e3 100644 --- a/tests/projects/mdk/hello/src/startup_ARMCM3.s +++ b/tests/projects/embed/mdk/hello/src/startup_ARMCM3.s diff --git a/tests/projects/mdk/hello/src/system_ARMCM3.c b/tests/projects/embed/mdk/hello/src/system_ARMCM3.c index 19484537f..19484537f 100644 --- a/tests/projects/mdk/hello/src/system_ARMCM3.c +++ b/tests/projects/embed/mdk/hello/src/system_ARMCM3.c diff --git a/tests/projects/mdk/hello/xmake.lua b/tests/projects/embed/mdk/hello/xmake.lua index 6afb714af..6afb714af 100644 --- a/tests/projects/mdk/hello/xmake.lua +++ b/tests/projects/embed/mdk/hello/xmake.lua diff --git a/tests/projects/bpf/minimal/src/minimal.bpf.c b/tests/projects/linux/bpf/minimal/src/minimal.bpf.c index ea1eeefbb..ea1eeefbb 100644 --- a/tests/projects/bpf/minimal/src/minimal.bpf.c +++ b/tests/projects/linux/bpf/minimal/src/minimal.bpf.c diff --git a/tests/projects/bpf/minimal/src/minimal.c b/tests/projects/linux/bpf/minimal/src/minimal.c index 4b6ec3181..4b6ec3181 100644 --- a/tests/projects/bpf/minimal/src/minimal.c +++ b/tests/projects/linux/bpf/minimal/src/minimal.c diff --git a/tests/projects/bpf/minimal/test.lua b/tests/projects/linux/bpf/minimal/test.lua index 2856a3831..2856a3831 100644 --- a/tests/projects/bpf/minimal/test.lua +++ b/tests/projects/linux/bpf/minimal/test.lua diff --git a/tests/projects/bpf/minimal/xmake.lua b/tests/projects/linux/bpf/minimal/xmake.lua index 8507b8aa1..8507b8aa1 100644 --- a/tests/projects/bpf/minimal/xmake.lua +++ b/tests/projects/linux/bpf/minimal/xmake.lua diff --git a/tests/projects/linux/driver/hello/src/add.c b/tests/projects/linux/driver/hello/src/add.c new file mode 100644 index 000000000..59aab4983 --- /dev/null +++ b/tests/projects/linux/driver/hello/src/add.c @@ -0,0 +1,3 @@ +int add(int a, int b) { + return a + b; +} diff --git a/tests/projects/linux/driver/hello/src/hello.c b/tests/projects/linux/driver/hello/src/hello.c new file mode 100644 index 000000000..414a03bb2 --- /dev/null +++ b/tests/projects/linux/driver/hello/src/hello.c @@ -0,0 +1,23 @@ +#include <linux/init.h> +#include <linux/module.h> + +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_AUTHOR("Ruki"); +MODULE_DESCRIPTION("A simple Hello World Module"); +MODULE_ALIAS("a simplest module"); + +int add(int a, int b); + +int hello_init(void) +{ + printk(KERN_INFO "Hello World: %d\n", add(1, 2)); + return 0; +} + +void hello_exit(void) +{ + printk(KERN_INFO "Goodbye World\n"); +} + +module_init(hello_init); +module_exit(hello_exit); diff --git a/tests/projects/linux/driver/hello/xmake.lua b/tests/projects/linux/driver/hello/xmake.lua new file mode 100644 index 000000000..bac728434 --- /dev/null +++ b/tests/projects/linux/driver/hello/xmake.lua @@ -0,0 +1,7 @@ +add_requires("linux-headers", {configs = {driver_modules = true}}) + +target("hello") + add_rules("platform.linux.driver") + add_files("src/*.c") + add_packages("linux-headers") + set_license("GPL-2.0") diff --git a/tests/projects/linux/driver/hello_makefile/Makefile b/tests/projects/linux/driver/hello_makefile/Makefile new file mode 100644 index 000000000..1d5aa92b4 --- /dev/null +++ b/tests/projects/linux/driver/hello_makefile/Makefile @@ -0,0 +1,15 @@ +ifneq ($(KERNELRELEASE),) + obj-m := hello.o + hello-objs := ./src/hello.o ./src/add.o +else + KERN_DIR ?= /usr/src/linux-headers-5.11.0-41-generic/ + PWD := $(shell pwd) + +default: + $(MAKE) -C $(KERN_DIR) V=1 M=$(PWD) modules +endif + +clean: + rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions + rm -rf src/*.o src/*~ core src/.depend src/.*.cmd src/*.ko src/*.mod.c src/.tmp_versions + diff --git a/tests/projects/linux/driver/hello_makefile/src/add.c b/tests/projects/linux/driver/hello_makefile/src/add.c new file mode 100644 index 000000000..59aab4983 --- /dev/null +++ b/tests/projects/linux/driver/hello_makefile/src/add.c @@ -0,0 +1,3 @@ +int add(int a, int b) { + return a + b; +} diff --git a/tests/projects/linux/driver/hello_makefile/src/hello.c b/tests/projects/linux/driver/hello_makefile/src/hello.c new file mode 100644 index 000000000..414a03bb2 --- /dev/null +++ b/tests/projects/linux/driver/hello_makefile/src/hello.c @@ -0,0 +1,23 @@ +#include <linux/init.h> +#include <linux/module.h> + +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_AUTHOR("Ruki"); +MODULE_DESCRIPTION("A simple Hello World Module"); +MODULE_ALIAS("a simplest module"); + +int add(int a, int b); + +int hello_init(void) +{ + printk(KERN_INFO "Hello World: %d\n", add(1, 2)); + return 0; +} + +void hello_exit(void) +{ + printk(KERN_INFO "Goodbye World\n"); +} + +module_init(hello_init); +module_exit(hello_exit); diff --git a/tests/projects/wdk/kmdf/ioctl/driver/nonpnp.c b/tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.c index 13f811f35..13f811f35 100644 --- a/tests/projects/wdk/kmdf/ioctl/driver/nonpnp.c +++ b/tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.c diff --git a/tests/projects/wdk/kmdf/ioctl/driver/nonpnp.h b/tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.h index c874e79d2..c874e79d2 100644 --- a/tests/projects/wdk/kmdf/ioctl/driver/nonpnp.h +++ b/tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.h diff --git a/tests/projects/wdk/kmdf/ioctl/driver/nonpnp.rc b/tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.rc index cac68f7b2..cac68f7b2 100644 --- a/tests/projects/wdk/kmdf/ioctl/driver/nonpnp.rc +++ b/tests/projects/windows/driver/kmdf/ioctl/driver/nonpnp.rc diff --git a/tests/projects/wdk/kmdf/ioctl/driver/trace.h b/tests/projects/windows/driver/kmdf/ioctl/driver/trace.h index 089f213f0..089f213f0 100644 --- a/tests/projects/wdk/kmdf/ioctl/driver/trace.h +++ b/tests/projects/windows/driver/kmdf/ioctl/driver/trace.h diff --git a/tests/projects/wdk/kmdf/ioctl/exe/install.c b/tests/projects/windows/driver/kmdf/ioctl/exe/install.c index 53d1f7678..53d1f7678 100644 --- a/tests/projects/wdk/kmdf/ioctl/exe/install.c +++ b/tests/projects/windows/driver/kmdf/ioctl/exe/install.c diff --git a/tests/projects/wdk/kmdf/ioctl/exe/nonpnp.inf b/tests/projects/windows/driver/kmdf/ioctl/exe/nonpnp.inf index b20a58b48..b20a58b48 100644 --- a/tests/projects/wdk/kmdf/ioctl/exe/nonpnp.inf +++ b/tests/projects/windows/driver/kmdf/ioctl/exe/nonpnp.inf diff --git a/tests/projects/wdk/kmdf/ioctl/exe/testapp.c b/tests/projects/windows/driver/kmdf/ioctl/exe/testapp.c index c12f26073..c12f26073 100644 --- a/tests/projects/wdk/kmdf/ioctl/exe/testapp.c +++ b/tests/projects/windows/driver/kmdf/ioctl/exe/testapp.c diff --git a/tests/projects/wdk/kmdf/ioctl/localwpp.ini b/tests/projects/windows/driver/kmdf/ioctl/localwpp.ini index c290070a7..c290070a7 100644 --- a/tests/projects/wdk/kmdf/ioctl/localwpp.ini +++ b/tests/projects/windows/driver/kmdf/ioctl/localwpp.ini diff --git a/tests/projects/wdk/kmdf/ioctl/public.h b/tests/projects/windows/driver/kmdf/ioctl/public.h index 02e24be2e..02e24be2e 100644 --- a/tests/projects/wdk/kmdf/ioctl/public.h +++ b/tests/projects/windows/driver/kmdf/ioctl/public.h diff --git a/tests/projects/wdk/kmdf/ioctl/xmake.lua b/tests/projects/windows/driver/kmdf/ioctl/xmake.lua index 9cbaf0b5f..9cbaf0b5f 100644 --- a/tests/projects/wdk/kmdf/ioctl/xmake.lua +++ b/tests/projects/windows/driver/kmdf/ioctl/xmake.lua diff --git a/tests/projects/wdk/kmdf/serial/error.c b/tests/projects/windows/driver/kmdf/serial/error.c index 904e54b05..904e54b05 100644 --- a/tests/projects/wdk/kmdf/serial/error.c +++ b/tests/projects/windows/driver/kmdf/serial/error.c diff --git a/tests/projects/wdk/kmdf/serial/flush.c b/tests/projects/windows/driver/kmdf/serial/flush.c index 695a60a26..695a60a26 100644 --- a/tests/projects/wdk/kmdf/serial/flush.c +++ b/tests/projects/windows/driver/kmdf/serial/flush.c diff --git a/tests/projects/wdk/kmdf/serial/immediat.c b/tests/projects/windows/driver/kmdf/serial/immediat.c index 9fd7683af..9fd7683af 100644 --- a/tests/projects/wdk/kmdf/serial/immediat.c +++ b/tests/projects/windows/driver/kmdf/serial/immediat.c diff --git a/tests/projects/wdk/kmdf/serial/initunlo.c b/tests/projects/windows/driver/kmdf/serial/initunlo.c index 07e7fb003..07e7fb003 100644 --- a/tests/projects/wdk/kmdf/serial/initunlo.c +++ b/tests/projects/windows/driver/kmdf/serial/initunlo.c diff --git a/tests/projects/wdk/kmdf/serial/ioctl.c b/tests/projects/windows/driver/kmdf/serial/ioctl.c index 07ff2b147..07ff2b147 100644 --- a/tests/projects/wdk/kmdf/serial/ioctl.c +++ b/tests/projects/windows/driver/kmdf/serial/ioctl.c diff --git a/tests/projects/wdk/kmdf/serial/isr.c b/tests/projects/windows/driver/kmdf/serial/isr.c index 806164a61..806164a61 100644 --- a/tests/projects/wdk/kmdf/serial/isr.c +++ b/tests/projects/windows/driver/kmdf/serial/isr.c diff --git a/tests/projects/wdk/kmdf/serial/log.c b/tests/projects/windows/driver/kmdf/serial/log.c index 285c8b2f8..285c8b2f8 100644 --- a/tests/projects/wdk/kmdf/serial/log.c +++ b/tests/projects/windows/driver/kmdf/serial/log.c diff --git a/tests/projects/wdk/kmdf/serial/log.h b/tests/projects/windows/driver/kmdf/serial/log.h index eedcd08f3..eedcd08f3 100644 --- a/tests/projects/wdk/kmdf/serial/log.h +++ b/tests/projects/windows/driver/kmdf/serial/log.h diff --git a/tests/projects/wdk/kmdf/serial/modmflow.c b/tests/projects/windows/driver/kmdf/serial/modmflow.c index 1c71ae3fd..1c71ae3fd 100644 --- a/tests/projects/wdk/kmdf/serial/modmflow.c +++ b/tests/projects/windows/driver/kmdf/serial/modmflow.c diff --git a/tests/projects/wdk/kmdf/serial/openclos.c b/tests/projects/windows/driver/kmdf/serial/openclos.c index 477f07ac1..477f07ac1 100644 --- a/tests/projects/wdk/kmdf/serial/openclos.c +++ b/tests/projects/windows/driver/kmdf/serial/openclos.c diff --git a/tests/projects/wdk/kmdf/serial/pnp.c b/tests/projects/windows/driver/kmdf/serial/pnp.c index 8773f30ac..8773f30ac 100644 --- a/tests/projects/wdk/kmdf/serial/pnp.c +++ b/tests/projects/windows/driver/kmdf/serial/pnp.c diff --git a/tests/projects/wdk/kmdf/serial/power.c b/tests/projects/windows/driver/kmdf/serial/power.c index 68aad3efa..68aad3efa 100644 --- a/tests/projects/wdk/kmdf/serial/power.c +++ b/tests/projects/windows/driver/kmdf/serial/power.c diff --git a/tests/projects/wdk/kmdf/serial/precomp.h b/tests/projects/windows/driver/kmdf/serial/precomp.h index 7c7c5d5ef..7c7c5d5ef 100644 --- a/tests/projects/wdk/kmdf/serial/precomp.h +++ b/tests/projects/windows/driver/kmdf/serial/precomp.h diff --git a/tests/projects/wdk/kmdf/serial/precompsrc.c b/tests/projects/windows/driver/kmdf/serial/precompsrc.c index 5944cf515..5944cf515 100644 --- a/tests/projects/wdk/kmdf/serial/precompsrc.c +++ b/tests/projects/windows/driver/kmdf/serial/precompsrc.c diff --git a/tests/projects/wdk/kmdf/serial/purge.c b/tests/projects/windows/driver/kmdf/serial/purge.c index fcc32148e..fcc32148e 100644 --- a/tests/projects/wdk/kmdf/serial/purge.c +++ b/tests/projects/windows/driver/kmdf/serial/purge.c diff --git a/tests/projects/wdk/kmdf/serial/qsfile.c b/tests/projects/windows/driver/kmdf/serial/qsfile.c index ad1604131..ad1604131 100644 --- a/tests/projects/wdk/kmdf/serial/qsfile.c +++ b/tests/projects/windows/driver/kmdf/serial/qsfile.c diff --git a/tests/projects/wdk/kmdf/serial/read.c b/tests/projects/windows/driver/kmdf/serial/read.c index ab745fdd7..ab745fdd7 100644 --- a/tests/projects/wdk/kmdf/serial/read.c +++ b/tests/projects/windows/driver/kmdf/serial/read.c diff --git a/tests/projects/wdk/kmdf/serial/registry.c b/tests/projects/windows/driver/kmdf/serial/registry.c index 5ab25955a..5ab25955a 100644 --- a/tests/projects/wdk/kmdf/serial/registry.c +++ b/tests/projects/windows/driver/kmdf/serial/registry.c diff --git a/tests/projects/wdk/kmdf/serial/serial.h b/tests/projects/windows/driver/kmdf/serial/serial.h index fcbf9748f..fcbf9748f 100644 --- a/tests/projects/wdk/kmdf/serial/serial.h +++ b/tests/projects/windows/driver/kmdf/serial/serial.h diff --git a/tests/projects/wdk/kmdf/serial/serial.inx b/tests/projects/windows/driver/kmdf/serial/serial.inx Binary files differindex 3322653b0..3322653b0 100644 --- a/tests/projects/wdk/kmdf/serial/serial.inx +++ b/tests/projects/windows/driver/kmdf/serial/serial.inx diff --git a/tests/projects/wdk/kmdf/serial/serial.rc b/tests/projects/windows/driver/kmdf/serial/serial.rc index 9fbb59de3..9fbb59de3 100644 --- a/tests/projects/wdk/kmdf/serial/serial.rc +++ b/tests/projects/windows/driver/kmdf/serial/serial.rc diff --git a/tests/projects/wdk/kmdf/serial/serialp.h b/tests/projects/windows/driver/kmdf/serial/serialp.h index d363f3503..d363f3503 100644 --- a/tests/projects/wdk/kmdf/serial/serialp.h +++ b/tests/projects/windows/driver/kmdf/serial/serialp.h diff --git a/tests/projects/wdk/kmdf/serial/serlog.mc b/tests/projects/windows/driver/kmdf/serial/serlog.mc index ee6935b67..ee6935b67 100644 --- a/tests/projects/wdk/kmdf/serial/serlog.mc +++ b/tests/projects/windows/driver/kmdf/serial/serlog.mc diff --git a/tests/projects/wdk/kmdf/serial/trace.h b/tests/projects/windows/driver/kmdf/serial/trace.h index 5bd9d50ca..5bd9d50ca 100644 --- a/tests/projects/wdk/kmdf/serial/trace.h +++ b/tests/projects/windows/driver/kmdf/serial/trace.h diff --git a/tests/projects/wdk/kmdf/serial/utils.c b/tests/projects/windows/driver/kmdf/serial/utils.c index a84136efe..a84136efe 100644 --- a/tests/projects/wdk/kmdf/serial/utils.c +++ b/tests/projects/windows/driver/kmdf/serial/utils.c diff --git a/tests/projects/wdk/kmdf/serial/waitmask.c b/tests/projects/windows/driver/kmdf/serial/waitmask.c index c3139679e..c3139679e 100644 --- a/tests/projects/wdk/kmdf/serial/waitmask.c +++ b/tests/projects/windows/driver/kmdf/serial/waitmask.c diff --git a/tests/projects/wdk/kmdf/serial/wmi.c b/tests/projects/windows/driver/kmdf/serial/wmi.c index 0076f4337..0076f4337 100644 --- a/tests/projects/wdk/kmdf/serial/wmi.c +++ b/tests/projects/windows/driver/kmdf/serial/wmi.c diff --git a/tests/projects/wdk/kmdf/serial/write.c b/tests/projects/windows/driver/kmdf/serial/write.c index c67c062b4..c67c062b4 100644 --- a/tests/projects/wdk/kmdf/serial/write.c +++ b/tests/projects/windows/driver/kmdf/serial/write.c diff --git a/tests/projects/wdk/kmdf/serial/xmake.lua b/tests/projects/windows/driver/kmdf/serial/xmake.lua index 53d59c650..53d59c650 100644 --- a/tests/projects/wdk/kmdf/serial/xmake.lua +++ b/tests/projects/windows/driver/kmdf/serial/xmake.lua diff --git a/tests/projects/wdk/umdf/echo/driver/device.c b/tests/projects/windows/driver/umdf/echo/driver/device.c index bd522565f..bd522565f 100644 --- a/tests/projects/wdk/umdf/echo/driver/device.c +++ b/tests/projects/windows/driver/umdf/echo/driver/device.c diff --git a/tests/projects/wdk/umdf/echo/driver/device.h b/tests/projects/windows/driver/umdf/echo/driver/device.h index 1e2c1f28e..1e2c1f28e 100644 --- a/tests/projects/wdk/umdf/echo/driver/device.h +++ b/tests/projects/windows/driver/umdf/echo/driver/device.h diff --git a/tests/projects/wdk/umdf/echo/driver/driver.c b/tests/projects/windows/driver/umdf/echo/driver/driver.c index 2835aa1dd..2835aa1dd 100644 --- a/tests/projects/wdk/umdf/echo/driver/driver.c +++ b/tests/projects/windows/driver/umdf/echo/driver/driver.c diff --git a/tests/projects/wdk/umdf/echo/driver/driver.h b/tests/projects/windows/driver/umdf/echo/driver/driver.h index 6539d6cf5..6539d6cf5 100644 --- a/tests/projects/wdk/umdf/echo/driver/driver.h +++ b/tests/projects/windows/driver/umdf/echo/driver/driver.h diff --git a/tests/projects/wdk/umdf/echo/driver/echoum.inx b/tests/projects/windows/driver/umdf/echo/driver/echoum.inx Binary files differindex cae8b45fe..cae8b45fe 100644 --- a/tests/projects/wdk/umdf/echo/driver/echoum.inx +++ b/tests/projects/windows/driver/umdf/echo/driver/echoum.inx diff --git a/tests/projects/wdk/umdf/echo/driver/queue.c b/tests/projects/windows/driver/umdf/echo/driver/queue.c index e0f3d7b6b..e0f3d7b6b 100644 --- a/tests/projects/wdk/umdf/echo/driver/queue.c +++ b/tests/projects/windows/driver/umdf/echo/driver/queue.c diff --git a/tests/projects/wdk/umdf/echo/driver/queue.h b/tests/projects/windows/driver/umdf/echo/driver/queue.h index 5c04dc8f7..5c04dc8f7 100644 --- a/tests/projects/wdk/umdf/echo/driver/queue.h +++ b/tests/projects/windows/driver/umdf/echo/driver/queue.h diff --git a/tests/projects/wdk/umdf/echo/exe/echoapp.cpp b/tests/projects/windows/driver/umdf/echo/exe/echoapp.cpp index 47c0ae0a1..47c0ae0a1 100644 --- a/tests/projects/wdk/umdf/echo/exe/echoapp.cpp +++ b/tests/projects/windows/driver/umdf/echo/exe/echoapp.cpp diff --git a/tests/projects/wdk/umdf/echo/exe/public.h b/tests/projects/windows/driver/umdf/echo/exe/public.h index defcded56..defcded56 100644 --- a/tests/projects/wdk/umdf/echo/exe/public.h +++ b/tests/projects/windows/driver/umdf/echo/exe/public.h diff --git a/tests/projects/wdk/umdf/echo/xmake.lua b/tests/projects/windows/driver/umdf/echo/xmake.lua index 0a5ec9517..0a5ec9517 100644 --- a/tests/projects/wdk/umdf/echo/xmake.lua +++ b/tests/projects/windows/driver/umdf/echo/xmake.lua diff --git a/tests/projects/wdk/umdf/skeleton/Skeleton.rc b/tests/projects/windows/driver/umdf/skeleton/Skeleton.rc index 0e202c4f5..0e202c4f5 100644 --- a/tests/projects/wdk/umdf/skeleton/Skeleton.rc +++ b/tests/projects/windows/driver/umdf/skeleton/Skeleton.rc diff --git a/tests/projects/wdk/umdf/skeleton/UMDFSkeleton_OSR.inx b/tests/projects/windows/driver/umdf/skeleton/UMDFSkeleton_OSR.inx Binary files differindex 3da01ae62..3da01ae62 100644 --- a/tests/projects/wdk/umdf/skeleton/UMDFSkeleton_OSR.inx +++ b/tests/projects/windows/driver/umdf/skeleton/UMDFSkeleton_OSR.inx diff --git a/tests/projects/wdk/umdf/skeleton/UMDFSkeleton_Root.inx b/tests/projects/windows/driver/umdf/skeleton/UMDFSkeleton_Root.inx Binary files differindex 63d9f94c5..63d9f94c5 100644 --- a/tests/projects/wdk/umdf/skeleton/UMDFSkeleton_Root.inx +++ b/tests/projects/windows/driver/umdf/skeleton/UMDFSkeleton_Root.inx diff --git a/tests/projects/wdk/umdf/skeleton/comsup.cpp b/tests/projects/windows/driver/umdf/skeleton/comsup.cpp index fb0b0807c..fb0b0807c 100644 --- a/tests/projects/wdk/umdf/skeleton/comsup.cpp +++ b/tests/projects/windows/driver/umdf/skeleton/comsup.cpp diff --git a/tests/projects/wdk/umdf/skeleton/comsup.h b/tests/projects/windows/driver/umdf/skeleton/comsup.h index ba4cd89c3..ba4cd89c3 100644 --- a/tests/projects/wdk/umdf/skeleton/comsup.h +++ b/tests/projects/windows/driver/umdf/skeleton/comsup.h diff --git a/tests/projects/wdk/umdf/skeleton/device.cpp b/tests/projects/windows/driver/umdf/skeleton/device.cpp index 2efcd36f0..2efcd36f0 100644 --- a/tests/projects/wdk/umdf/skeleton/device.cpp +++ b/tests/projects/windows/driver/umdf/skeleton/device.cpp diff --git a/tests/projects/wdk/umdf/skeleton/device.h b/tests/projects/windows/driver/umdf/skeleton/device.h index 26dd0e329..26dd0e329 100644 --- a/tests/projects/wdk/umdf/skeleton/device.h +++ b/tests/projects/windows/driver/umdf/skeleton/device.h diff --git a/tests/projects/wdk/umdf/skeleton/dllsup.cpp b/tests/projects/windows/driver/umdf/skeleton/dllsup.cpp index e540452d9..e540452d9 100644 --- a/tests/projects/wdk/umdf/skeleton/dllsup.cpp +++ b/tests/projects/windows/driver/umdf/skeleton/dllsup.cpp diff --git a/tests/projects/wdk/umdf/skeleton/driver.cpp b/tests/projects/windows/driver/umdf/skeleton/driver.cpp index d91b4b0b5..d91b4b0b5 100644 --- a/tests/projects/wdk/umdf/skeleton/driver.cpp +++ b/tests/projects/windows/driver/umdf/skeleton/driver.cpp diff --git a/tests/projects/wdk/umdf/skeleton/driver.h b/tests/projects/windows/driver/umdf/skeleton/driver.h index e764f517d..e764f517d 100644 --- a/tests/projects/wdk/umdf/skeleton/driver.h +++ b/tests/projects/windows/driver/umdf/skeleton/driver.h diff --git a/tests/projects/wdk/umdf/skeleton/exports.def b/tests/projects/windows/driver/umdf/skeleton/exports.def index 7d46558b7..7d46558b7 100644 --- a/tests/projects/wdk/umdf/skeleton/exports.def +++ b/tests/projects/windows/driver/umdf/skeleton/exports.def diff --git a/tests/projects/wdk/umdf/skeleton/internal.h b/tests/projects/windows/driver/umdf/skeleton/internal.h index f338a9b6c..f338a9b6c 100644 --- a/tests/projects/wdk/umdf/skeleton/internal.h +++ b/tests/projects/windows/driver/umdf/skeleton/internal.h diff --git a/tests/projects/wdk/umdf/skeleton/xmake.lua b/tests/projects/windows/driver/umdf/skeleton/xmake.lua index 8a48274ca..8a48274ca 100644 --- a/tests/projects/wdk/umdf/skeleton/xmake.lua +++ b/tests/projects/windows/driver/umdf/skeleton/xmake.lua diff --git a/tests/projects/wdk/wdm/msdsm/SampleDSM.inf b/tests/projects/windows/driver/wdm/msdsm/SampleDSM.inf Binary files differindex f632f6e50..f632f6e50 100644 --- a/tests/projects/wdk/wdm/msdsm/SampleDSM.inf +++ b/tests/projects/windows/driver/wdm/msdsm/SampleDSM.inf diff --git a/tests/projects/wdk/wdm/msdsm/dsmmain.c b/tests/projects/windows/driver/wdm/msdsm/dsmmain.c index bdf875184..bdf875184 100644 --- a/tests/projects/wdk/wdm/msdsm/dsmmain.c +++ b/tests/projects/windows/driver/wdm/msdsm/dsmmain.c diff --git a/tests/projects/wdk/wdm/msdsm/dsmtrace.mof b/tests/projects/windows/driver/wdm/msdsm/dsmtrace.mof index d9e8cf4cc..d9e8cf4cc 100644 --- a/tests/projects/wdk/wdm/msdsm/dsmtrace.mof +++ b/tests/projects/windows/driver/wdm/msdsm/dsmtrace.mof diff --git a/tests/projects/wdk/wdm/msdsm/intrface.c b/tests/projects/windows/driver/wdm/msdsm/intrface.c index eeebf7f93..eeebf7f93 100644 --- a/tests/projects/wdk/wdm/msdsm/intrface.c +++ b/tests/projects/windows/driver/wdm/msdsm/intrface.c diff --git a/tests/projects/wdk/wdm/msdsm/msdsm.h b/tests/projects/windows/driver/wdm/msdsm/msdsm.h index e1ddeb52d..e1ddeb52d 100644 --- a/tests/projects/wdk/wdm/msdsm/msdsm.h +++ b/tests/projects/windows/driver/wdm/msdsm/msdsm.h diff --git a/tests/projects/wdk/wdm/msdsm/msdsm.mof b/tests/projects/windows/driver/wdm/msdsm/msdsm.mof index 53ee61392..53ee61392 100644 --- a/tests/projects/wdk/wdm/msdsm/msdsm.mof +++ b/tests/projects/windows/driver/wdm/msdsm/msdsm.mof diff --git a/tests/projects/wdk/wdm/msdsm/msdsm.rc b/tests/projects/windows/driver/wdm/msdsm/msdsm.rc index 743640342..743640342 100644 --- a/tests/projects/wdk/wdm/msdsm/msdsm.rc +++ b/tests/projects/windows/driver/wdm/msdsm/msdsm.rc diff --git a/tests/projects/wdk/wdm/msdsm/msdsmdsm.mof b/tests/projects/windows/driver/wdm/msdsm/msdsmdsm.mof index f85eea270..f85eea270 100644 --- a/tests/projects/wdk/wdm/msdsm/msdsmdsm.mof +++ b/tests/projects/windows/driver/wdm/msdsm/msdsmdsm.mof diff --git a/tests/projects/wdk/wdm/msdsm/precomp.h b/tests/projects/windows/driver/wdm/msdsm/precomp.h index bca8595db..bca8595db 100644 --- a/tests/projects/wdk/wdm/msdsm/precomp.h +++ b/tests/projects/windows/driver/wdm/msdsm/precomp.h diff --git a/tests/projects/wdk/wdm/msdsm/precompsrc.c b/tests/projects/windows/driver/wdm/msdsm/precompsrc.c index 5944cf515..5944cf515 100644 --- a/tests/projects/wdk/wdm/msdsm/precompsrc.c +++ b/tests/projects/windows/driver/wdm/msdsm/precompsrc.c diff --git a/tests/projects/wdk/wdm/msdsm/prototypes.h b/tests/projects/windows/driver/wdm/msdsm/prototypes.h index ebcf42029..ebcf42029 100644 --- a/tests/projects/wdk/wdm/msdsm/prototypes.h +++ b/tests/projects/windows/driver/wdm/msdsm/prototypes.h diff --git a/tests/projects/wdk/wdm/msdsm/trace.h b/tests/projects/windows/driver/wdm/msdsm/trace.h index b9449cc8f..b9449cc8f 100644 --- a/tests/projects/wdk/wdm/msdsm/trace.h +++ b/tests/projects/windows/driver/wdm/msdsm/trace.h diff --git a/tests/projects/wdk/wdm/msdsm/utils.c b/tests/projects/windows/driver/wdm/msdsm/utils.c index 91d8f44ce..91d8f44ce 100644 --- a/tests/projects/wdk/wdm/msdsm/utils.c +++ b/tests/projects/windows/driver/wdm/msdsm/utils.c diff --git a/tests/projects/wdk/wdm/msdsm/wmi.c b/tests/projects/windows/driver/wdm/msdsm/wmi.c index 0ee882192..0ee882192 100644 --- a/tests/projects/wdk/wdm/msdsm/wmi.c +++ b/tests/projects/windows/driver/wdm/msdsm/wmi.c diff --git a/tests/projects/wdk/wdm/msdsm/xmake.lua b/tests/projects/windows/driver/wdm/msdsm/xmake.lua index 3c68aa1b8..3c68aa1b8 100644 --- a/tests/projects/wdk/wdm/msdsm/xmake.lua +++ b/tests/projects/windows/driver/wdm/msdsm/xmake.lua diff --git a/tests/projects/wdk/wdm/perfcounters/kcs.c b/tests/projects/windows/driver/wdm/perfcounters/kcs.c index 9996addcb..9996addcb 100644 --- a/tests/projects/wdk/wdm/perfcounters/kcs.c +++ b/tests/projects/windows/driver/wdm/perfcounters/kcs.c diff --git a/tests/projects/wdk/wdm/perfcounters/kcs.h b/tests/projects/windows/driver/wdm/perfcounters/kcs.h index f575b816d..f575b816d 100644 --- a/tests/projects/wdk/wdm/perfcounters/kcs.h +++ b/tests/projects/windows/driver/wdm/perfcounters/kcs.h diff --git a/tests/projects/wdk/wdm/perfcounters/kcs.man b/tests/projects/windows/driver/wdm/perfcounters/kcs.man index a5a16ffbd..a5a16ffbd 100644 --- a/tests/projects/wdk/wdm/perfcounters/kcs.man +++ b/tests/projects/windows/driver/wdm/perfcounters/kcs.man diff --git a/tests/projects/wdk/wdm/perfcounters/kcs.rc b/tests/projects/windows/driver/wdm/perfcounters/kcs.rc index 7ebb6b97b..7ebb6b97b 100644 --- a/tests/projects/wdk/wdm/perfcounters/kcs.rc +++ b/tests/projects/windows/driver/wdm/perfcounters/kcs.rc diff --git a/tests/projects/wdk/wdm/perfcounters/xmake.lua b/tests/projects/windows/driver/wdm/perfcounters/xmake.lua index 83e4e4d9b..83e4e4d9b 100644 --- a/tests/projects/wdk/wdm/perfcounters/xmake.lua +++ b/tests/projects/windows/driver/wdm/perfcounters/xmake.lua diff --git a/tests/projects/winsdk/usbview/app.config b/tests/projects/windows/winsdk/usbview/app.config index fe947d6fd..fe947d6fd 100644 --- a/tests/projects/winsdk/usbview/app.config +++ b/tests/projects/windows/winsdk/usbview/app.config diff --git a/tests/projects/winsdk/usbview/bang.ico b/tests/projects/windows/winsdk/usbview/bang.ico Binary files differindex 90fe0f220..90fe0f220 100644 --- a/tests/projects/winsdk/usbview/bang.ico +++ b/tests/projects/windows/winsdk/usbview/bang.ico diff --git a/tests/projects/winsdk/usbview/codeanalysis.h b/tests/projects/windows/winsdk/usbview/codeanalysis.h index 56fa54a1a..56fa54a1a 100644 --- a/tests/projects/winsdk/usbview/codeanalysis.h +++ b/tests/projects/windows/winsdk/usbview/codeanalysis.h diff --git a/tests/projects/winsdk/usbview/debug.c b/tests/projects/windows/winsdk/usbview/debug.c index b73d727d5..b73d727d5 100644 --- a/tests/projects/winsdk/usbview/debug.c +++ b/tests/projects/windows/winsdk/usbview/debug.c diff --git a/tests/projects/winsdk/usbview/devnode.c b/tests/projects/windows/winsdk/usbview/devnode.c index d9a3b8ecc..d9a3b8ecc 100644 --- a/tests/projects/winsdk/usbview/devnode.c +++ b/tests/projects/windows/winsdk/usbview/devnode.c diff --git a/tests/projects/winsdk/usbview/dispaud.c b/tests/projects/windows/winsdk/usbview/dispaud.c index bbc16a912..bbc16a912 100644 --- a/tests/projects/winsdk/usbview/dispaud.c +++ b/tests/projects/windows/winsdk/usbview/dispaud.c diff --git a/tests/projects/winsdk/usbview/display.c b/tests/projects/windows/winsdk/usbview/display.c index beead6d93..beead6d93 100644 --- a/tests/projects/winsdk/usbview/display.c +++ b/tests/projects/windows/winsdk/usbview/display.c diff --git a/tests/projects/winsdk/usbview/dispvid.c b/tests/projects/windows/winsdk/usbview/dispvid.c index 537309721..537309721 100644 --- a/tests/projects/winsdk/usbview/dispvid.c +++ b/tests/projects/windows/winsdk/usbview/dispvid.c diff --git a/tests/projects/winsdk/usbview/enum.c b/tests/projects/windows/winsdk/usbview/enum.c index 314a08806..314a08806 100644 --- a/tests/projects/winsdk/usbview/enum.c +++ b/tests/projects/windows/winsdk/usbview/enum.c diff --git a/tests/projects/winsdk/usbview/h264.c b/tests/projects/windows/winsdk/usbview/h264.c index 108a1d540..108a1d540 100644 --- a/tests/projects/winsdk/usbview/h264.c +++ b/tests/projects/windows/winsdk/usbview/h264.c diff --git a/tests/projects/winsdk/usbview/h264.h b/tests/projects/windows/winsdk/usbview/h264.h index 841318922..841318922 100644 --- a/tests/projects/winsdk/usbview/h264.h +++ b/tests/projects/windows/winsdk/usbview/h264.h diff --git a/tests/projects/winsdk/usbview/hub.ico b/tests/projects/windows/winsdk/usbview/hub.ico Binary files differindex d0620df89..d0620df89 100644 --- a/tests/projects/winsdk/usbview/hub.ico +++ b/tests/projects/windows/winsdk/usbview/hub.ico diff --git a/tests/projects/winsdk/usbview/langidlist.h b/tests/projects/windows/winsdk/usbview/langidlist.h index 0f2d90621..0f2d90621 100644 --- a/tests/projects/winsdk/usbview/langidlist.h +++ b/tests/projects/windows/winsdk/usbview/langidlist.h diff --git a/tests/projects/winsdk/usbview/monitor.ico b/tests/projects/windows/winsdk/usbview/monitor.ico Binary files differindex e015959f6..e015959f6 100644 --- a/tests/projects/winsdk/usbview/monitor.ico +++ b/tests/projects/windows/winsdk/usbview/monitor.ico diff --git a/tests/projects/winsdk/usbview/port.ico b/tests/projects/windows/winsdk/usbview/port.ico Binary files differindex 98c8aa04c..98c8aa04c 100644 --- a/tests/projects/winsdk/usbview/port.ico +++ b/tests/projects/windows/winsdk/usbview/port.ico diff --git a/tests/projects/winsdk/usbview/resource.h b/tests/projects/windows/winsdk/usbview/resource.h index 921fa6a30..921fa6a30 100644 --- a/tests/projects/winsdk/usbview/resource.h +++ b/tests/projects/windows/winsdk/usbview/resource.h diff --git a/tests/projects/winsdk/usbview/split.cur b/tests/projects/windows/winsdk/usbview/split.cur Binary files differindex 41d65e3c5..41d65e3c5 100644 --- a/tests/projects/winsdk/usbview/split.cur +++ b/tests/projects/windows/winsdk/usbview/split.cur diff --git a/tests/projects/winsdk/usbview/ssport.ico b/tests/projects/windows/winsdk/usbview/ssport.ico Binary files differindex e0f712ae6..e0f712ae6 100644 --- a/tests/projects/winsdk/usbview/ssport.ico +++ b/tests/projects/windows/winsdk/usbview/ssport.ico diff --git a/tests/projects/winsdk/usbview/ssusb.ico b/tests/projects/windows/winsdk/usbview/ssusb.ico Binary files differindex 71f0ebe1d..71f0ebe1d 100644 --- a/tests/projects/winsdk/usbview/ssusb.ico +++ b/tests/projects/windows/winsdk/usbview/ssusb.ico diff --git a/tests/projects/winsdk/usbview/usb.ico b/tests/projects/windows/winsdk/usbview/usb.ico Binary files differindex e615d3e24..e615d3e24 100644 --- a/tests/projects/winsdk/usbview/usb.ico +++ b/tests/projects/windows/winsdk/usbview/usb.ico diff --git a/tests/projects/winsdk/usbview/usbdesc.h b/tests/projects/windows/winsdk/usbview/usbdesc.h index 8b78a3c39..8b78a3c39 100644 --- a/tests/projects/winsdk/usbview/usbdesc.h +++ b/tests/projects/windows/winsdk/usbview/usbdesc.h diff --git a/tests/projects/winsdk/usbview/usbschema.hpp b/tests/projects/windows/winsdk/usbview/usbschema.hpp index 1aac6d000..1aac6d000 100644 --- a/tests/projects/winsdk/usbview/usbschema.hpp +++ b/tests/projects/windows/winsdk/usbview/usbschema.hpp diff --git a/tests/projects/winsdk/usbview/usbviddesc.h b/tests/projects/windows/winsdk/usbview/usbviddesc.h index f5a17164f..f5a17164f 100644 --- a/tests/projects/winsdk/usbview/usbviddesc.h +++ b/tests/projects/windows/winsdk/usbview/usbviddesc.h diff --git a/tests/projects/winsdk/usbview/uvcdesc.h b/tests/projects/windows/winsdk/usbview/uvcdesc.h index f343fa731..f343fa731 100644 --- a/tests/projects/winsdk/usbview/uvcdesc.h +++ b/tests/projects/windows/winsdk/usbview/uvcdesc.h diff --git a/tests/projects/winsdk/usbview/uvcview.c b/tests/projects/windows/winsdk/usbview/uvcview.c index 04b295292..04b295292 100644 --- a/tests/projects/winsdk/usbview/uvcview.c +++ b/tests/projects/windows/winsdk/usbview/uvcview.c diff --git a/tests/projects/winsdk/usbview/uvcview.h b/tests/projects/windows/winsdk/usbview/uvcview.h index d5c3f5786..d5c3f5786 100644 --- a/tests/projects/winsdk/usbview/uvcview.h +++ b/tests/projects/windows/winsdk/usbview/uvcview.h diff --git a/tests/projects/winsdk/usbview/uvcview.rc b/tests/projects/windows/winsdk/usbview/uvcview.rc index 6c7642ce3..6c7642ce3 100644 --- a/tests/projects/winsdk/usbview/uvcview.rc +++ b/tests/projects/windows/winsdk/usbview/uvcview.rc diff --git a/tests/projects/winsdk/usbview/vndrlist.h b/tests/projects/windows/winsdk/usbview/vndrlist.h index ccf21267b..ccf21267b 100644 --- a/tests/projects/winsdk/usbview/vndrlist.h +++ b/tests/projects/windows/winsdk/usbview/vndrlist.h diff --git a/tests/projects/winsdk/usbview/xmake.lua b/tests/projects/windows/winsdk/usbview/xmake.lua index 5d5639429..5d5639429 100644 --- a/tests/projects/winsdk/usbview/xmake.lua +++ b/tests/projects/windows/winsdk/usbview/xmake.lua diff --git a/tests/projects/winsdk/usbview/xmlhelper.cpp b/tests/projects/windows/winsdk/usbview/xmlhelper.cpp index bac7d797b..bac7d797b 100644 --- a/tests/projects/winsdk/usbview/xmlhelper.cpp +++ b/tests/projects/windows/winsdk/usbview/xmlhelper.cpp diff --git a/tests/projects/winsdk/usbview/xmlhelper.h b/tests/projects/windows/winsdk/usbview/xmlhelper.h index 1da37d97b..1da37d97b 100644 --- a/tests/projects/winsdk/usbview/xmlhelper.h +++ b/tests/projects/windows/winsdk/usbview/xmlhelper.h diff --git a/tests/projects/winsdk/windemo/main.cpp b/tests/projects/windows/winsdk/windemo/main.cpp index a8340d936..a8340d936 100644 --- a/tests/projects/winsdk/windemo/main.cpp +++ b/tests/projects/windows/winsdk/windemo/main.cpp diff --git a/tests/projects/winsdk/windemo/resource.h b/tests/projects/windows/winsdk/windemo/resource.h index 65ba8f31d..65ba8f31d 100644 --- a/tests/projects/winsdk/windemo/resource.h +++ b/tests/projects/windows/winsdk/windemo/resource.h diff --git a/tests/projects/winsdk/windemo/small.ico b/tests/projects/windows/winsdk/windemo/small.ico Binary files differindex d551aa3aa..d551aa3aa 100644 --- a/tests/projects/winsdk/windemo/small.ico +++ b/tests/projects/windows/winsdk/windemo/small.ico diff --git a/tests/projects/winsdk/windemo/stdafx.cpp b/tests/projects/windows/winsdk/windemo/stdafx.cpp index 50daaa27d..50daaa27d 100644 --- a/tests/projects/winsdk/windemo/stdafx.cpp +++ b/tests/projects/windows/winsdk/windemo/stdafx.cpp diff --git a/tests/projects/winsdk/windemo/stdafx.h b/tests/projects/windows/winsdk/windemo/stdafx.h index de0dfa3cd..de0dfa3cd 100644 --- a/tests/projects/winsdk/windemo/stdafx.h +++ b/tests/projects/windows/winsdk/windemo/stdafx.h diff --git a/tests/projects/winsdk/windemo/targetver.h b/tests/projects/windows/winsdk/windemo/targetver.h index f583181df..f583181df 100644 --- a/tests/projects/winsdk/windemo/targetver.h +++ b/tests/projects/windows/winsdk/windemo/targetver.h diff --git a/tests/projects/winsdk/windemo/test b/tests/projects/windows/winsdk/windemo/test index 33639f71c..33639f71c 100644 --- a/tests/projects/winsdk/windemo/test +++ b/tests/projects/windows/winsdk/windemo/test diff --git a/tests/projects/winsdk/windemo/test.h b/tests/projects/windows/winsdk/windemo/test.h index e60f2eb7e..e60f2eb7e 100644 --- a/tests/projects/winsdk/windemo/test.h +++ b/tests/projects/windows/winsdk/windemo/test.h diff --git a/tests/projects/winsdk/windemo/test.ico b/tests/projects/windows/winsdk/windemo/test.ico Binary files differindex d551aa3aa..d551aa3aa 100644 --- a/tests/projects/winsdk/windemo/test.ico +++ b/tests/projects/windows/winsdk/windemo/test.ico diff --git a/tests/projects/winsdk/windemo/test.rc b/tests/projects/windows/winsdk/windemo/test.rc index 9ef96ba63..9ef96ba63 100644 --- a/tests/projects/winsdk/windemo/test.rc +++ b/tests/projects/windows/winsdk/windemo/test.rc diff --git a/tests/projects/winsdk/windemo/xmake.lua b/tests/projects/windows/winsdk/windemo/xmake.lua index 1f492822e..1f492822e 100644 --- a/tests/projects/winsdk/windemo/xmake.lua +++ b/tests/projects/windows/winsdk/windemo/xmake.lua diff --git a/xmake/core/project/target.lua b/xmake/core/project/target.lua index 499db099c..07327362d 100644 --- a/xmake/core/project/target.lua +++ b/xmake/core/project/target.lua @@ -398,6 +398,11 @@ function _instance:extraconf(name, item, key) return self._INFO:extraconf(name, item, key) end +-- set the extra configuration +function _instance:extraconf_set(name, item, key, value) + self._INFO:extraconf_set(name, item, key, value) +end + -- get user private data function _instance:data(name) return self._DATA and self._DATA[name] @@ -1239,14 +1244,8 @@ end -- set the config info to the given source file function _instance:fileconfig_set(sourcefile, info) - - -- get files config local filesconfig = self._FILESCONFIG or {} - - -- set config info filesconfig[sourcefile] = info - - -- update files config self._FILESCONFIG = filesconfig end @@ -2092,7 +2091,7 @@ function target.filename(targetname, targetkind, opt) -- make filename by format local filename = targetname - local format = opt.format or platform.format(targetkind, opt.plat, opt.arch) + local format = opt.format or platform.format(targetkind, opt.plat, opt.arch) or "$(name)" if format then local splitinfo = format:split("$(name)", {plain = true, strict = true}) local prefixname = splitinfo[1] or "" diff --git a/xmake/rules/platform/linux/driver/driver_modules.lua b/xmake/rules/platform/linux/driver/driver_modules.lua new file mode 100644 index 000000000..ceb3c6336 --- /dev/null +++ b/xmake/rules/platform/linux/driver/driver_modules.lua @@ -0,0 +1,245 @@ +--!A cross-platform build utility based on Lua +-- +-- Licensed under the Apache License, Version 2.0 (the "License"); +-- you may not use this file except in compliance with the License. +-- You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. +-- +-- Copyright (C) 2015-present, TBOOX Open Source Group. +-- +-- @author ruki +-- @file driver_modules.lua +-- + +-- imports +import("core.base.option") +import("core.project.depend") +import("lib.detect.find_tool") +import("utils.progress") +import("private.tools.ccache") + +-- get linux-headers sdk +function _get_linux_headers_sdk(target) + local linux_headers = assert(target:pkg("linux-headers"), "please add `add_requires(\"linux-headers\", {configs = {driver_modules = true}})` and `add_packages(\"linux-headers\")` to the given target!") + local includedirs = linux_headers:get("includedirs") or linux_headers:get("sysincludedirs") + local version = linux_headers:version() + local includedir + local linux_headersdir + for _, dir in ipairs(includedirs) do + if dir:find("linux-headers", 1, true) then + includedir = dir + linux_headersdir = path.directory(dir) + break + end + end + assert(linux_headersdir, "linux-headers not found!") + if not os.isfile(path.join(includedir, "generated/autoconf.h")) and + not os.isfile(path.join(includedir, "config/auto.conf")) then + raise("kernel configuration is invalid. include/generated/autoconf.h or include/config/auto.conf are missing.") + end + return {version = version, sdkdir = linux_headersdir, includedir = includedir} +end + +-- get c system search include directory of gcc +-- +-- e.g. gcc -E -Wp,-v -xc /dev/null +-- +-- ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" +-- ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/include-fixed" +-- ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include" +-- #include "..." search starts here: +-- #include <...> search starts here: +-- /usr/lib/gcc/x86_64-linux-gnu/10/include <-- we need get it +-- /usr/local/include +-- /usr/include/x86_64-linux-gnu +-- /usr/include +-- End of search list. +function _get_gcc_includedir(target) + local includedir = _g.includedir + if includedir == nil then + local gcc, toolname = target:tool("cc") + assert(toolname, "gcc") + + local _, result = try {function () return os.iorunv(gcc, {"-E", "-Wp,-v", "-xc", os.nuldev()}) end} + if result then + for _, line in ipairs(result:split("\n", {plain = true})) do + line = line:trim() + if os.isdir(line) then + includedir = line + break + elseif line:startswith("End") then + break + end + end + end + _g.includedir = includedir or false + end + return includedir or nil +end + +-- get ld arch, e.g. ld -m elf_x86_64 +function _get_ld_arch(target) + if target:is_arch("x86_64", "i386") then + return "elf_" .. target:arch() + end +end + +function load(target) + -- we need only need binary kind, because we will rewrite on_link + target:set("kind", "binary") + target:set("extension", ".ko") + + -- get and save linux-headers sdk + local linux_headers = _get_linux_headers_sdk(target) + target:data_set("linux.driver.linux_headers", linux_headers) + + -- check compiler, we must use gcc + assert(target:has_tool("cc", "gcc"), "we must use gcc compiler!") + + -- check rules + for _, rulename in ipairs({"mode.release", "mode.debug", "mode.releasedbg", "mode.minsizerel", "mode.asan", "mode.tsan"}) do + assert(not target:rule(rulename), "target(%s) is linux driver module, it need not rule(%s)!", target:name(), rulename) + end + + -- add includedirs + local sdkdir = linux_headers.sdkdir + local includedir = linux_headers.includedir + local archsubdir + if target:is_arch("x86_64", "i386") then + archsubdir = path.join(sdkdir, "arch", "x86") + else + raise("rule(platform.linux.driver): unsupported arch(%s)!", target:arch()) + end + assert(archsubdir, "unknown arch(%s) for linux driver modules!", target:arch()) + local gcc_includedir = _get_gcc_includedir(target) + if gcc_includedir then + target:add("sysincludedirs", gcc_includedir) + end + target:add("includedirs", path.join(archsubdir, "include")) + target:add("includedirs", path.join(archsubdir, "include", "generated")) + target:add("includedirs", includedir) + target:add("includedirs", path.join(archsubdir, "include", "uapi")) + target:add("includedirs", path.join(archsubdir, "include", "generated", "uapi")) + target:add("includedirs", path.join(includedir, "uapi")) + target:add("includedirs", path.join(includedir, "generated", "uapi")) + target:add("cflags", "-include " .. path.join(includedir, "linux", "kconfig.h")) + target:add("cflags", "-include " .. path.join(includedir, "linux", "compiler_types.h")) + -- we need disable includedirs from add_packages("linux-headers") + target:pkg("linux-headers"):set("includedirs", nil) + target:pkg("linux-headers"):set("sysincludedirs", nil) + + -- add compilation flags + target:set("policy", "check.auto_ignore_flags", false) + target:add("defines", "__KERNEL__", "MODULE") + target:add("defines", "KBUILD_MODNAME=\"" .. target:name() .. "\"") + for _, sourcefile in ipairs(target:sourcefiles()) do + target:fileconfig_set(sourcefile, {defines = "KBUILD_BASENAME=\"" .. path.basename(sourcefile) .. "\""}) + end + if target:is_arch("x86_64", "i386") then + target:add("defines", "CONFIG_X86_X32_ABI") + end + target:set("optimize", "faster") -- we need use -O2 for gcc + if not target:get("language") then + target:set("languages", "gnu89") + end + target:add("cflags", "-nostdinc") + target:add("cflags", "-mno-sse", "-mno-mmx", "-mno-sse2", "-mno-3dnow", "-mno-avx", "-mno-80387", "-mno-fp-ret-in-387") + target:add("cflags", "-mpreferred-stack-boundary=3", "-mskip-rax-setup", "-mtune=generic", "-mno-red-zone", "-mcmodel=kernel") + target:add("cflags", "-mindirect-branch=thunk-extern", "-mindirect-branch-register", "-mrecord-mcount") + target:add("cflags", "-fmacro-prefix-map=./=", " -fno-strict-aliasing", "-fno-common", "-fshort-wchar", "-fno-PIE") + target:add("cflags", "-fcf-protection=none", "-falign-jumps=1", "-falign-loops=1", "-fno-asynchronous-unwind-tables") + target:add("cflags", "-fno-jump-tables", "-fno-delete-null-pointer-checks", "-fno-allow-store-data-races") + target:add("cflags", "-fno-reorder-blocks", "-fno-ipa-cp-clone", "-fno-partial-inlining", "-fstack-protector-strong") + target:add("cflags", "-fno-inline-functions-called-once", "-falign-functions=32") + target:add("cflags", "-fno-strict-overflow", "-fno-stack-check", "-fconserve-stack") + + -- add optional flags (fentry) + local has_fentry = target:values("linux.driver.fentry") + if has_fentry then + target:add("cflags", "-mfentry") + target:add("defines", "CC_USING_FENTRY") + end + + -- add optional flags (asan) + local has_asan = target:values("linux.driver.asan") + if has_asan then + target:add("cflags", "-fsanitize=kernel-address") + target:add("cflags", "-fasan-shadow-offset=0xdffffc0000000000", "-fsanitize-coverage=trace-pc", "-fsanitize-coverage=trace-cmp") + target:add("cflags", "--param asan-globals=1", "--param asan-instrumentation-with-call-threshold=0", "--param asan-stack=1", "--param asan-instrument-allocas=1") + end +end + +function link(target, opt) + local targetfile = target:targetfile() + local dependfile = target:dependfile(targetfile) + local objectfiles = target:objectfiles() + depend.on_changed(function () + + -- trace + progress.show(opt.progress, "${color.build.object}linking.$(mode) %s", targetfile) + + -- get module scripts + local modpost, ldscriptfile + local linux_headers = target:data("linux.driver.linux_headers") + if linux_headers then + modpost = path.join(linux_headers.sdkdir, "scripts", "mod", "modpost") + ldscriptfile = path.join(linux_headers.sdkdir, "scripts", "module.lds") + end + assert(modpost and os.isfile(modpost), "scripts/mod/modpost not found!") + assert(ldscriptfile and os.isfile(ldscriptfile), "scripts/module.lds not found!") + + -- get ld + local ld = assert(find_tool("ld"), "ld not found!") + + -- link target.o + local ldarch = assert(_get_ld_arch(target), "unknown ld arch!") + local targetfile_o = target:objectfile(targetfile) + local argv = {"-m", ldarch, "-r", "-o", targetfile_o} + table.join2(argv, objectfiles) + os.mkdir(path.directory(targetfile_o)) + os.vrunv(ld.program, argv) + + -- generate target.mod + local targetfile_mod = targetfile_o:gsub("%.o$", ".mod") + io.writefile(targetfile_mod, table.concat(objectfiles, " ") .. "\n\n") + + -- generate .sourcename.o.cmd + -- we need only touch an empty file, otherwise modpost command will raise error. + for _, objectfile in ipairs(objectfiles) do + local objectdir = path.directory(objectfile) + local objectname = path.filename(objectfile) + local cmdfile = path.join(objectdir, "." .. objectname .. ".cmd") + io.writefile(cmdfile, "") + end + + -- generate target.mod.c + local orderfile = path.join(path.directory(targetfile_o), "modules.order") + local symversfile = path.join(path.directory(targetfile_o), "Module.symvers") + argv = {"-m", "-a", "-o", symversfile, "-e", "-N", "-T", "-"} + io.writefile(orderfile, targetfile_o .. "\n") + os.vrunv(modpost, argv, {stdin = orderfile}) + + -- compile target.mod.c + local targetfile_mod_c = targetfile_o:gsub("%.o$", ".mod.c") + local targetfile_mod_o = targetfile_o:gsub("%.o$", ".mod.o") + local compinst = target:compiler("cc") + if option.get("verbose") then + print(compinst:compcmd(targetfile_mod_c, targetfile_mod_o, {target = target, rawargs = true})) + end + assert(compinst:compile(targetfile_mod_c, targetfile_mod_o, {target = target})) + + -- link target.ko + local targetfile_o = target:objectfile(targetfile) + argv = {"-m", ldarch, "-r", "--build-id=sha1", "-T", ldscriptfile, "-o", targetfile, targetfile_o, targetfile_mod_o} + os.mkdir(path.directory(targetfile)) + os.vrunv(ld.program, argv) + + end, {dependfile = dependfile, lastmtime = os.mtime(target:targetfile()), files = objectfiles}) +end diff --git a/xmake/rules/platform/linux/driver/xmake.lua b/xmake/rules/platform/linux/driver/xmake.lua new file mode 100644 index 000000000..78ba6d089 --- /dev/null +++ b/xmake/rules/platform/linux/driver/xmake.lua @@ -0,0 +1,30 @@ +--!A cross-platform build utility based on Lua +-- +-- Licensed under the Apache License, Version 2.0 (the "License"); +-- you may not use this file except in compliance with the License. +-- You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. +-- +-- Copyright (C) 2015-present, TBOOX Open Source Group. +-- +-- @author ruki +-- @file xmake.lua +-- + +-- build linux driver module +rule("platform.linux.driver") + set_sourcekinds("cc") + on_load(function (target) + import("driver_modules").load(target) + end) + on_link(function (target, opt) + import("driver_modules").link(target, opt) + end) + |
