[KEYBOARDLEYOUTS]

Keyboard layout files have special requirements to the section layout of the dell. That is because MS win32k devs didn't write proper code and that is why the original win32k first parses all sections, looks for the .data section, checks if everything is valid and then truncates a pointer in a table to 16 bit and uses this as an offset into the section. Of course that does ONLY work, if the section is the first section AND that pointer happens to be less than 64k off from the start of the section AND the image base is 64k aligned. To achieve this, add a new module type kbdlayout that does all the neccessary things. On MSVC we merge the sections with a linker command, on GCC we use a custom linker script.

svn path=/trunk/; revision=61053
This commit is contained in:
Timo Kreuzer 2013-11-19 23:30:58 +00:00
parent f200563361
commit db897ac621
82 changed files with 127 additions and 80 deletions

View file

@ -429,6 +429,18 @@ function(set_module_type MODULE TYPE)
set(__subsystem console) set(__subsystem console)
elseif(${TYPE} STREQUAL win32gui) elseif(${TYPE} STREQUAL win32gui)
set(__subsystem windows) set(__subsystem windows)
elseif(${TYPE} STREQUAL kbdlayout)
set_entrypoint(${MODULE} 0)
set_image_base(${MODULE} 0x5FFF0000)
set_subsystem(${MODULE} native)
if (MSVC)
# Merge the .text and .rdata section into the .data section
add_target_link_flags(${MODULE} "/ignore:4254 /SECTION:.data,ER /MERGE:.text=.data /MERGE:.rdata=.data /MERGE:.bss=.data /MERGE:.edata=.data")
else()
# Use a custom linker script
add_target_link_flags(${MODULE} "-Wl,-T,${CMAKE_SOURCE_DIR}/kbdlayout.lds")
add_dependencies(${MODULE} "${CMAKE_SOURCE_DIR}/kbdlayout.lds")
endif()
elseif(NOT ((${TYPE} STREQUAL win32dll) OR (${TYPE} STREQUAL win32ocx) elseif(NOT ((${TYPE} STREQUAL win32dll) OR (${TYPE} STREQUAL win32ocx)
OR (${TYPE} STREQUAL cpl) OR (${TYPE} STREQUAL module))) OR (${TYPE} STREQUAL cpl) OR (${TYPE} STREQUAL module)))
message(FATAL_ERROR "Unknown type ${TYPE} for module ${MODULE}") message(FATAL_ERROR "Unknown type ${TYPE} for module ${MODULE}")

View file

@ -5,7 +5,7 @@ spec2def(kbda1.dll kbda1.spec)
add_library(kbda1 SHARED kbda1.c kbda1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbda1.def) add_library(kbda1 SHARED kbda1.c kbda1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbda1.def)
set_entrypoint(kbda1 0) set_module_type(kbda1 kbdlayout)
add_dependencies(kbda1 psdk) add_dependencies(kbda1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbda2.dll kbda2.spec)
add_library(kbda2 SHARED kbda2.c kbda2.rc ${CMAKE_CURRENT_BINARY_DIR}/kbda2.def) add_library(kbda2 SHARED kbda2.c kbda2.rc ${CMAKE_CURRENT_BINARY_DIR}/kbda2.def)
set_entrypoint(kbda2 0) set_module_type(kbda2 kbdlayout)
add_dependencies(kbda2 psdk) add_dependencies(kbda2 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbda3.dll kbda3.spec)
add_library(kbda3 SHARED kbda3.c kbda3.rc ${CMAKE_CURRENT_BINARY_DIR}/kbda3.def) add_library(kbda3 SHARED kbda3.c kbda3.rc ${CMAKE_CURRENT_BINARY_DIR}/kbda3.def)
set_entrypoint(kbda3 0) set_module_type(kbda3 kbdlayout)
add_dependencies(kbda3 psdk) add_dependencies(kbda3 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdal.dll kbdal.spec)
add_library(kbdal SHARED kbdal.c kbdal.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdal.def) add_library(kbdal SHARED kbdal.c kbdal.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdal.def)
set_entrypoint(kbdal 0) set_module_type(kbdal kbdlayout)
add_dependencies(kbdal psdk) add_dependencies(kbdal psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdarme.dll kbdarme.spec)
add_library(kbdarme SHARED kbdarme.c kbdarme.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdarme.def) add_library(kbdarme SHARED kbdarme.c kbdarme.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdarme.def)
set_entrypoint(kbdarme 0) set_module_type(kbdarme kbdlayout)
add_dependencies(kbdarme psdk) add_dependencies(kbdarme psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdarmw.dll kbdarmw.spec)
add_library(kbdarmw SHARED kbdarmw.c kbdarmw.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdarmw.def) add_library(kbdarmw SHARED kbdarmw.c kbdarmw.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdarmw.def)
set_entrypoint(kbdarmw 0) set_module_type(kbdarmw kbdlayout)
add_dependencies(kbdarmw psdk) add_dependencies(kbdarmw psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdaze.dll kbdaze.spec)
add_library(kbdaze SHARED kbdaze.c kbdaze.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdaze.def) add_library(kbdaze SHARED kbdaze.c kbdaze.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdaze.def)
set_entrypoint(kbdaze 0) set_module_type(kbdaze kbdlayout)
add_dependencies(kbdaze psdk) add_dependencies(kbdaze psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdazel.dll kbdazel.spec)
add_library(kbdazel SHARED kbdazel.c kbdazel.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdazel.def) add_library(kbdazel SHARED kbdazel.c kbdazel.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdazel.def)
set_entrypoint(kbdazel 0) set_module_type(kbdazel kbdlayout)
add_dependencies(kbdazel psdk) add_dependencies(kbdazel psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdbe.dll kbdbe.spec)
add_library(kbdbe SHARED kbdbe.c kbdbe.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbe.def) add_library(kbdbe SHARED kbdbe.c kbdbe.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbe.def)
set_entrypoint(kbdbe 0) set_module_type(kbdbe kbdlayout)
add_dependencies(kbdbe psdk) add_dependencies(kbdbe psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdbga.dll kbdbga.spec)
add_library(kbdbga SHARED kbdbga.c kbdbga.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbga.def) add_library(kbdbga SHARED kbdbga.c kbdbga.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbga.def)
set_entrypoint(kbdbga 0) set_module_type(kbdbga kbdlayout)
add_dependencies(kbdbga psdk) add_dependencies(kbdbga psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdbgm.dll kbdbgm.spec)
add_library(kbdbgm SHARED kbdbgm.c kbdbgm.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbgm.def) add_library(kbdbgm SHARED kbdbgm.c kbdbgm.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbgm.def)
set_entrypoint(kbdbgm 0) set_module_type(kbdbgm kbdlayout)
add_dependencies(kbdbgm psdk) add_dependencies(kbdbgm psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdbgt.dll kbdbgt.spec)
add_library(kbdbgt SHARED kbdbgt.c kbdbgt.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbgt.def) add_library(kbdbgt SHARED kbdbgt.c kbdbgt.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbgt.def)
set_entrypoint(kbdbgt 0) set_module_type(kbdbgt kbdlayout)
add_dependencies(kbdbgt psdk) add_dependencies(kbdbgt psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdblr.dll kbdblr.spec)
add_library(kbdblr SHARED kbdblr.c kbdblr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdblr.def) add_library(kbdblr SHARED kbdblr.c kbdblr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdblr.def)
set_entrypoint(kbdblr 0) set_module_type(kbdblr kbdlayout)
add_dependencies(kbdblr psdk) add_dependencies(kbdblr psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdbr.dll kbdbr.spec)
add_library(kbdbr SHARED kbdbr.c kbdbr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbr.def) add_library(kbdbr SHARED kbdbr.c kbdbr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbr.def)
set_entrypoint(kbdbr 0) set_module_type(kbdbr kbdlayout)
add_dependencies(kbdbr psdk) add_dependencies(kbdbr psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdbur.dll kbdbur.spec)
add_library(kbdbur SHARED kbdbur.c kbdbur.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbur.def) add_library(kbdbur SHARED kbdbur.c kbdbur.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdbur.def)
set_entrypoint(kbdbur 0) set_module_type(kbdbur kbdlayout)
add_dependencies(kbdbur psdk) add_dependencies(kbdbur psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdcan.dll kbdcan.spec)
add_library(kbdcan SHARED kbdcan.c kbdcan.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcan.def) add_library(kbdcan SHARED kbdcan.c kbdcan.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcan.def)
set_entrypoint(kbdcan 0) set_module_type(kbdcan kbdlayout)
add_dependencies(kbdcan psdk) add_dependencies(kbdcan psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdcr.dll kbdcr.spec)
add_library(kbdcr SHARED kbdcr.c kbdcr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcr.def) add_library(kbdcr SHARED kbdcr.c kbdcr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcr.def)
set_entrypoint(kbdcr 0) set_module_type(kbdcr kbdlayout)
add_dependencies(kbdcr psdk) add_dependencies(kbdcr psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdcz.dll kbdcz.spec)
add_library(kbdcz SHARED kbdcz.c kbdcz.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcz.def) add_library(kbdcz SHARED kbdcz.c kbdcz.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcz.def)
set_entrypoint(kbdcz 0) set_module_type(kbdcz kbdlayout)
add_dependencies(kbdcz psdk) add_dependencies(kbdcz psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdcz1.dll kbdcz1.spec)
add_library(kbdcz1 SHARED kbdcz1.c kbdcz1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcz1.def) add_library(kbdcz1 SHARED kbdcz1.c kbdcz1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdcz1.def)
set_entrypoint(kbdcz1 0) set_module_type(kbdcz1 kbdlayout)
add_dependencies(kbdcz1 psdk) add_dependencies(kbdcz1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdda.dll kbdda.spec)
add_library(kbdda SHARED kbdda.c kbdda.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdda.def) add_library(kbdda SHARED kbdda.c kbdda.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdda.def)
set_entrypoint(kbdda 0) set_module_type(kbdda kbdlayout)
add_dependencies(kbdda psdk) add_dependencies(kbdda psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbddv.dll kbddv.spec)
add_library(kbddv SHARED kbddv.c kbddv.rc ${CMAKE_CURRENT_BINARY_DIR}/kbddv.def) add_library(kbddv SHARED kbddv.c kbddv.rc ${CMAKE_CURRENT_BINARY_DIR}/kbddv.def)
set_entrypoint(kbddv 0) set_module_type(kbddv kbdlayout)
add_dependencies(kbddv psdk) add_dependencies(kbddv psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdes.dll kbdes.spec)
add_library(kbdes SHARED kbdes.c kbdes.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdes.def) add_library(kbdes SHARED kbdes.c kbdes.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdes.def)
set_entrypoint(kbdes 0) set_module_type(kbdes kbdlayout)
add_dependencies(kbdes psdk) add_dependencies(kbdes psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdest.dll kbdest.spec)
add_library(kbdest SHARED kbdest.c kbdest.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdest.def) add_library(kbdest SHARED kbdest.c kbdest.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdest.def)
set_entrypoint(kbdest 0) set_module_type(kbdest kbdlayout)
add_dependencies(kbdest psdk) add_dependencies(kbdest psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdfc.dll kbdfc.spec)
add_library(kbdfc SHARED kbdfc.c kbdfc.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdfc.def) add_library(kbdfc SHARED kbdfc.c kbdfc.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdfc.def)
set_entrypoint(kbdfc 0) set_module_type(kbdfc kbdlayout)
add_dependencies(kbdfc psdk) add_dependencies(kbdfc psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdfi.dll kbdfi.spec)
add_library(kbdfi SHARED kbdfi.c kbdfi.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdfi.def) add_library(kbdfi SHARED kbdfi.c kbdfi.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdfi.def)
set_entrypoint(kbdfi 0) set_module_type(kbdfi kbdlayout)
add_dependencies(kbdfi psdk) add_dependencies(kbdfi psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdfr.dll kbdfr.spec)
add_library(kbdfr SHARED kbdfr.c kbdfr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdfr.def) add_library(kbdfr SHARED kbdfr.c kbdfr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdfr.def)
set_entrypoint(kbdfr 0) set_module_type(kbdfr kbdlayout)
add_dependencies(kbdfr psdk) add_dependencies(kbdfr psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdgeo.dll kbdgeo.spec)
add_library(kbdgeo SHARED kbdgeo.c kbdgeo.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgeo.def) add_library(kbdgeo SHARED kbdgeo.c kbdgeo.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgeo.def)
set_entrypoint(kbdgeo 0) set_module_type(kbdgeo kbdlayout)
add_dependencies(kbdgeo psdk) add_dependencies(kbdgeo psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdgerg.dll kbdgerg.spec)
add_library(kbdgerg SHARED kbdgerg.c kbdgerg.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgerg.def) add_library(kbdgerg SHARED kbdgerg.c kbdgerg.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgerg.def)
set_entrypoint(kbdgerg 0) set_module_type(kbdgerg kbdlayout)
add_dependencies(kbdgerg psdk) add_dependencies(kbdgerg psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdgneo.dll kbdgneo.spec)
add_library(kbdgneo SHARED kbdgneo.c kbdgneo.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgneo.def) add_library(kbdgneo SHARED kbdgneo.c kbdgneo.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgneo.def)
set_entrypoint(kbdgneo 0) set_module_type(kbdgneo kbdlayout)
add_dependencies(kbdgneo psdk) add_dependencies(kbdgneo psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdgr.dll kbdgr.spec)
add_library(kbdgr SHARED kbdgr.c kbdgr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgr.def) add_library(kbdgr SHARED kbdgr.c kbdgr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgr.def)
set_entrypoint(kbdgr 0) set_module_type(kbdgr kbdlayout)
add_dependencies(kbdgr psdk) add_dependencies(kbdgr psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdgrist.dll kbdgrist.spec)
add_library(kbdgrist SHARED kbdgrist.c kbdgrist.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgrist.def) add_library(kbdgrist SHARED kbdgrist.c kbdgrist.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdgrist.def)
set_entrypoint(kbdgrist 0) set_module_type(kbdgrist kbdlayout)
add_dependencies(kbdgrist psdk) add_dependencies(kbdgrist psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdhe.dll kbdhe.spec)
add_library(kbdhe SHARED kbdhe.c kbdhe.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdhe.def) add_library(kbdhe SHARED kbdhe.c kbdhe.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdhe.def)
set_entrypoint(kbdhe 0) set_module_type(kbdhe kbdlayout)
add_dependencies(kbdhe psdk) add_dependencies(kbdhe psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdheb.dll kbdheb.spec)
add_library(kbdheb SHARED kbdheb.c kbdheb.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdheb.def) add_library(kbdheb SHARED kbdheb.c kbdheb.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdheb.def)
set_entrypoint(kbdheb 0) set_module_type(kbdheb kbdlayout)
add_dependencies(kbdheb psdk) add_dependencies(kbdheb psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdhu.dll kbdhu.spec)
add_library(kbdhu SHARED kbdhu.c kbdhu.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdhu.def) add_library(kbdhu SHARED kbdhu.c kbdhu.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdhu.def)
set_entrypoint(kbdhu 0) set_module_type(kbdhu kbdlayout)
add_dependencies(kbdhu psdk) add_dependencies(kbdhu psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdic.dll kbdic.spec)
add_library(kbdic SHARED kbdic.c kbdic.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdic.def) add_library(kbdic SHARED kbdic.c kbdic.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdic.def)
set_entrypoint(kbdic 0) set_module_type(kbdic kbdlayout)
add_dependencies(kbdic psdk) add_dependencies(kbdic psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdinasa.dll kbdinasa.spec)
add_library(kbdinasa SHARED kbdinasa.c kbdinasa.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinasa.def) add_library(kbdinasa SHARED kbdinasa.c kbdinasa.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinasa.def)
set_entrypoint(kbdinasa 0) set_module_type(kbdinasa kbdlayout)
add_dependencies(kbdinasa psdk) add_dependencies(kbdinasa psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdinben.dll kbdinben.spec)
add_library(kbdinben SHARED kbdinben.c kbdinben.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinben.def) add_library(kbdinben SHARED kbdinben.c kbdinben.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinben.def)
set_entrypoint(kbdinben 0) set_module_type(kbdinben kbdlayout)
add_dependencies(kbdinben psdk) add_dependencies(kbdinben psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdindev.dll kbdindev.spec)
add_library(kbdindev SHARED kbdindev.c kbdindev.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdindev.def) add_library(kbdindev SHARED kbdindev.c kbdindev.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdindev.def)
set_entrypoint(kbdindev 0) set_module_type(kbdindev kbdlayout)
add_dependencies(kbdindev psdk) add_dependencies(kbdindev psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdinguj.dll kbdinguj.spec)
add_library(kbdinguj SHARED kbdinguj.c kbdinguj.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinguj.def) add_library(kbdinguj SHARED kbdinguj.c kbdinguj.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinguj.def)
set_entrypoint(kbdinguj 0) set_module_type(kbdinguj kbdlayout)
add_dependencies(kbdinguj psdk) add_dependencies(kbdinguj psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdinmal.dll kbdinmal.spec)
add_library(kbdinmal SHARED kbdinmal.c kbdinmal.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinmal.def) add_library(kbdinmal SHARED kbdinmal.c kbdinmal.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdinmal.def)
set_entrypoint(kbdinmal 0) set_module_type(kbdinmal kbdlayout)
add_dependencies(kbdinmal psdk) add_dependencies(kbdinmal psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdir.dll kbdir.spec)
add_library(kbdir SHARED kbdir.c kbdir.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdir.def) add_library(kbdir SHARED kbdir.c kbdir.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdir.def)
set_entrypoint(kbdir 0) set_module_type(kbdir kbdlayout)
add_dependencies(kbdir psdk) add_dependencies(kbdir psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdit.dll kbdit.spec)
add_library(kbdit SHARED kbdit.c kbdit.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdit.def) add_library(kbdit SHARED kbdit.c kbdit.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdit.def)
set_entrypoint(kbdit 0) set_module_type(kbdit kbdlayout)
add_dependencies(kbdit psdk) add_dependencies(kbdit psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdja.dll kbdja.spec)
add_library(kbdja SHARED kbdja.c kbdja.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdja.def) add_library(kbdja SHARED kbdja.c kbdja.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdja.def)
set_entrypoint(kbdja 0) set_module_type(kbdja kbdlayout)
add_dependencies(kbdja psdk) add_dependencies(kbdja psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdkaz.dll kbdkaz.spec)
add_library(kbdkaz SHARED kbdkaz.c kbdkaz.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdkaz.def) add_library(kbdkaz SHARED kbdkaz.c kbdkaz.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdkaz.def)
set_entrypoint(kbdkaz 0) set_module_type(kbdkaz kbdlayout)
add_dependencies(kbdkaz psdk) add_dependencies(kbdkaz psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdko.dll kbdko.spec)
add_library(kbdko SHARED kbdko.c kbdko.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdko.def) add_library(kbdko SHARED kbdko.c kbdko.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdko.def)
set_entrypoint(kbdko 0) set_module_type(kbdko kbdlayout)
add_dependencies(kbdko psdk) add_dependencies(kbdko psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdla.dll kbdla.spec)
add_library(kbdla SHARED kbdla.c kbdla.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdla.def) add_library(kbdla SHARED kbdla.c kbdla.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdla.def)
set_entrypoint(kbdla 0) set_module_type(kbdla kbdlayout)
add_dependencies(kbdla psdk) add_dependencies(kbdla psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdlt1.dll kbdlt1.spec)
add_library(kbdlt1 SHARED kbdlt1.c kbdlt1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdlt1.def) add_library(kbdlt1 SHARED kbdlt1.c kbdlt1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdlt1.def)
set_entrypoint(kbdlt1 0) set_module_type(kbdlt1 kbdlayout)
add_dependencies(kbdlt1 psdk) add_dependencies(kbdlt1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdlv.dll kbdlv.spec)
add_library(kbdlv SHARED kbdlv.c kbdlv.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdlv.def) add_library(kbdlv SHARED kbdlv.c kbdlv.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdlv.def)
set_entrypoint(kbdlv 0) set_module_type(kbdlv kbdlayout)
add_dependencies(kbdlv psdk) add_dependencies(kbdlv psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdmac.dll kbdmac.spec)
add_library(kbdmac SHARED kbdmac.c kbdmac.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdmac.def) add_library(kbdmac SHARED kbdmac.c kbdmac.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdmac.def)
set_entrypoint(kbdmac 0) set_module_type(kbdmac kbdlayout)
add_dependencies(kbdmac psdk) add_dependencies(kbdmac psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdne.dll kbdne.spec)
add_library(kbdne SHARED kbdne.c kbdne.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdne.def) add_library(kbdne SHARED kbdne.c kbdne.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdne.def)
set_entrypoint(kbdne 0) set_module_type(kbdne kbdlayout)
add_dependencies(kbdne psdk) add_dependencies(kbdne psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdno.dll kbdno.spec)
add_library(kbdno SHARED kbdno.c kbdno.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdno.def) add_library(kbdno SHARED kbdno.c kbdno.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdno.def)
set_entrypoint(kbdno 0) set_module_type(kbdno kbdlayout)
add_dependencies(kbdno psdk) add_dependencies(kbdno psdk)

View file

@ -3,7 +3,7 @@ spec2def(kbdpl.dll kbdpl.spec)
add_library(kbdpl SHARED kbdpl.c kbdpl.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdpl.def) add_library(kbdpl SHARED kbdpl.c kbdpl.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdpl.def)
set_entrypoint(kbdpl 0) set_module_type(kbdpl kbdlayout)
add_dependencies(kbdpl psdk) add_dependencies(kbdpl psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdpl1.dll kbdpl1.spec)
add_library(kbdpl1 SHARED kbdpl1.c kbdpl1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdpl1.def) add_library(kbdpl1 SHARED kbdpl1.c kbdpl1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdpl1.def)
set_entrypoint(kbdpl1 0) set_module_type(kbdpl1 kbdlayout)
add_dependencies(kbdpl1 psdk) add_dependencies(kbdpl1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdpo.dll kbdpo.spec)
add_library(kbdpo SHARED kbdpo.c kbdpo.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdpo.def) add_library(kbdpo SHARED kbdpo.c kbdpo.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdpo.def)
set_entrypoint(kbdpo 0) set_module_type(kbdpo kbdlayout)
add_dependencies(kbdpo psdk) add_dependencies(kbdpo psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdro.dll kbdro.spec)
add_library(kbdro SHARED kbdro.c kbdro.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdro.def) add_library(kbdro SHARED kbdro.c kbdro.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdro.def)
set_entrypoint(kbdro 0) set_module_type(kbdro kbdlayout)
add_dependencies(kbdro psdk) add_dependencies(kbdro psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdru.dll kbdru.spec)
add_library(kbdru SHARED kbdru.c kbdru.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdru.def) add_library(kbdru SHARED kbdru.c kbdru.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdru.def)
set_entrypoint(kbdru 0) set_module_type(kbdru kbdlayout)
add_dependencies(kbdru psdk) add_dependencies(kbdru psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdru1.dll kbdru1.spec)
add_library(kbdru1 SHARED kbdru1.c kbdru1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdru1.def) add_library(kbdru1 SHARED kbdru1.c kbdru1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdru1.def)
set_entrypoint(kbdru1 0) set_module_type(kbdru1 kbdlayout)
add_dependencies(kbdru1 psdk) add_dependencies(kbdru1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdsg.dll kbdsg.spec)
add_library(kbdsg SHARED kbdsg.c kbdsg.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsg.def) add_library(kbdsg SHARED kbdsg.c kbdsg.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsg.def)
set_entrypoint(kbdsg 0) set_module_type(kbdsg kbdlayout)
add_dependencies(kbdsg psdk) add_dependencies(kbdsg psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdsk.dll kbdsk.spec)
add_library(kbdsk SHARED kbdsk.c kbdsk.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsk.def) add_library(kbdsk SHARED kbdsk.c kbdsk.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsk.def)
set_entrypoint(kbdsk 0) set_module_type(kbdsk kbdlayout)
add_dependencies(kbdsk psdk) add_dependencies(kbdsk psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdsk1.dll kbdsk1.spec)
add_library(kbdsk1 SHARED kbdsk1.c kbdsk1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsk1.def) add_library(kbdsk1 SHARED kbdsk1.c kbdsk1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsk1.def)
set_entrypoint(kbdsk1 0) set_module_type(kbdsk1 kbdlayout)
add_dependencies(kbdsk1 psdk) add_dependencies(kbdsk1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdsw.dll kbdsw.spec)
add_library(kbdsw SHARED kbdsw.c kbdsw.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsw.def) add_library(kbdsw SHARED kbdsw.c kbdsw.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdsw.def)
set_entrypoint(kbdsw 0) set_module_type(kbdsw kbdlayout)
add_dependencies(kbdsw psdk) add_dependencies(kbdsw psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdtat.dll kbdtat.spec)
add_library(kbdtat SHARED kbdtat.c kbdtat.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdtat.def) add_library(kbdtat SHARED kbdtat.c kbdtat.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdtat.def)
set_entrypoint(kbdtat 0) set_module_type(kbdtat kbdlayout)
add_dependencies(kbdtat psdk) add_dependencies(kbdtat psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdth0.dll kbdth0.spec)
add_library(kbdth0 SHARED kbdth0.c kbdth0.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth0.def) add_library(kbdth0 SHARED kbdth0.c kbdth0.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth0.def)
set_entrypoint(kbdth0 0) set_module_type(kbdth0 kbdlayout)
add_dependencies(kbdth0 psdk) add_dependencies(kbdth0 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdth1.dll kbdth1.spec)
add_library(kbdth1 SHARED kbdth1.c kbdth1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth1.def) add_library(kbdth1 SHARED kbdth1.c kbdth1.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth1.def)
set_entrypoint(kbdth1 0) set_module_type(kbdth1 kbdlayout)
add_dependencies(kbdth1 psdk) add_dependencies(kbdth1 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdth2.dll kbdth2.spec)
add_library(kbdth2 SHARED kbdth2.c kbdth2.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth2.def) add_library(kbdth2 SHARED kbdth2.c kbdth2.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth2.def)
set_entrypoint(kbdth2 0) set_module_type(kbdth2 kbdlayout)
add_dependencies(kbdth2 psdk) add_dependencies(kbdth2 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdth3.dll kbdth3.spec)
add_library(kbdth3 SHARED kbdth3.c kbdth3.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth3.def) add_library(kbdth3 SHARED kbdth3.c kbdth3.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdth3.def)
set_entrypoint(kbdth3 0) set_module_type(kbdth3 kbdlayout)
add_dependencies(kbdth3 psdk) add_dependencies(kbdth3 psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdtuf.dll kbdtuf.spec)
add_library(kbdtuf SHARED kbdtuf.c kbdtuf.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdtuf.def) add_library(kbdtuf SHARED kbdtuf.c kbdtuf.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdtuf.def)
set_entrypoint(kbdtuf 0) set_module_type(kbdtuf kbdlayout)
add_dependencies(kbdtuf psdk) add_dependencies(kbdtuf psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdtuq.dll kbdtuq.spec)
add_library(kbdtuq SHARED kbdtuq.c kbdtuq.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdtuq.def) add_library(kbdtuq SHARED kbdtuq.c kbdtuq.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdtuq.def)
set_entrypoint(kbdtuq 0) set_module_type(kbdtuq kbdlayout)
add_dependencies(kbdtuq psdk) add_dependencies(kbdtuq psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbduk.dll kbduk.spec)
add_library(kbduk SHARED kbduk.c kbduk.rc ${CMAKE_CURRENT_BINARY_DIR}/kbduk.def) add_library(kbduk SHARED kbduk.c kbduk.rc ${CMAKE_CURRENT_BINARY_DIR}/kbduk.def)
set_entrypoint(kbduk 0) set_module_type(kbduk kbdlayout)
add_dependencies(kbduk psdk) add_dependencies(kbduk psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdur.dll kbdur.spec)
add_library(kbdur SHARED kbdur.c kbdur.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdur.def) add_library(kbdur SHARED kbdur.c kbdur.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdur.def)
set_entrypoint(kbdur 0) set_module_type(kbdur kbdlayout)
add_dependencies(kbdur psdk) add_dependencies(kbdur psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdurs.dll kbdurs.spec)
add_library(kbdurs SHARED kbdurs.c kbdurs.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdurs.def) add_library(kbdurs SHARED kbdurs.c kbdurs.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdurs.def)
set_entrypoint(kbdurs 0) set_module_type(kbdurs kbdlayout)
add_dependencies(kbdurs psdk) add_dependencies(kbdurs psdk)

View file

@ -4,7 +4,7 @@ spec2def(kbdus.dll kbdus.spec)
add_library(kbdus SHARED kbdus.c kbdus.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdus.def) add_library(kbdus SHARED kbdus.c kbdus.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdus.def)
set_entrypoint(kbdus 0) set_module_type(kbdus kbdlayout)
add_dependencies(kbdus psdk) add_dependencies(kbdus psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdusa.dll kbdusa.spec)
add_library(kbdusa SHARED kbdusa.c kbdusa.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusa.def) add_library(kbdusa SHARED kbdusa.c kbdusa.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusa.def)
set_entrypoint(kbdusa 0) set_module_type(kbdusa kbdlayout)
add_dependencies(kbdusa psdk) add_dependencies(kbdusa psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdusl.dll kbdusl.spec)
add_library(kbdusl SHARED kbdusl.c kbdusl.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusl.def) add_library(kbdusl SHARED kbdusl.c kbdusl.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusl.def)
set_entrypoint(kbdusl 0) set_module_type(kbdusl kbdlayout)
add_dependencies(kbdusl psdk) add_dependencies(kbdusl psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdusr.dll kbdusr.spec)
add_library(kbdusr SHARED kbdusr.c kbdusr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusr.def) add_library(kbdusr SHARED kbdusr.c kbdusr.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusr.def)
set_entrypoint(kbdusr 0) set_module_type(kbdusr kbdlayout)
add_dependencies(kbdusr psdk) add_dependencies(kbdusr psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdusx.dll kbdusx.spec)
add_library(kbdusx SHARED kbdusx.c kbdusx.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusx.def) add_library(kbdusx SHARED kbdusx.c kbdusx.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdusx.def)
set_entrypoint(kbdusx 0) set_module_type(kbdusx kbdlayout)
add_dependencies(kbdusx psdk) add_dependencies(kbdusx psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbduzb.dll kbduzb.spec)
add_library(kbduzb SHARED kbduzb.c kbduzb.rc ${CMAKE_CURRENT_BINARY_DIR}/kbduzb.def) add_library(kbduzb SHARED kbduzb.c kbduzb.rc ${CMAKE_CURRENT_BINARY_DIR}/kbduzb.def)
set_entrypoint(kbduzb 0) set_module_type(kbduzb kbdlayout)
add_dependencies(kbduzb psdk) add_dependencies(kbduzb psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdvntc.dll kbdvntc.spec)
add_library(kbdvntc SHARED kbdvntc.c kbdvntc.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdvntc.def) add_library(kbdvntc SHARED kbdvntc.c kbdvntc.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdvntc.def)
set_entrypoint(kbdvntc 0) set_module_type(kbdvntc kbdlayout)
add_dependencies(kbdvntc psdk) add_dependencies(kbdvntc psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdycc.dll kbdycc.spec)
add_library(kbdycc SHARED kbdycc.c kbdycc.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdycc.def) add_library(kbdycc SHARED kbdycc.c kbdycc.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdycc.def)
set_entrypoint(kbdycc 0) set_module_type(kbdycc kbdlayout)
add_dependencies(kbdycc psdk) add_dependencies(kbdycc psdk)

View file

@ -5,7 +5,7 @@ spec2def(kbdycl.dll kbdycl.spec)
add_library(kbdycl SHARED kbdycl.c kbdycl.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdycl.def) add_library(kbdycl SHARED kbdycl.c kbdycl.rc ${CMAKE_CURRENT_BINARY_DIR}/kbdycl.def)
set_entrypoint(kbdycl 0) set_module_type(kbdycl kbdlayout)
add_dependencies(kbdycl psdk) add_dependencies(kbdycl psdk)

35
reactos/kbdlayout.lds Normal file
View file

@ -0,0 +1,35 @@
SECTIONS
{
.data __image_base__ + __section_alignment__ :
{
*(.data)
*(SORT(.data*))
*(.rdata)
*(SORT(.rdata*))
*(.text)
*(SORT(.text*))
*(.bss)
*(COMMON)
}
.rsrc BLOCK(__section_alignment__) :
{
*(.rsrc)
*(SORT(.rsrc$*))
}
.reloc BLOCK(__section_alignment__) :
{
*(.reloc)
}
.edata BLOCK(__section_alignment__) :
{
*(.edata)
}
/DISCARD/ :
{
*(*)
}
}