add_executable(eventlog ${CMAKE_CURRENT_BINARY_DIR}/eventlog_eventlog.h.gch ${SOURCE})
-target_link_libraries(eventlog eventlogrpc_server pseh)
+target_link_libraries(eventlog eventlogrpc_server ${PSEH_LIB})
add_pch(eventlog ${CMAKE_CURRENT_SOURCE_DIR}/eventlog.h ${SOURCE})
add_executable(rpcss ${SOURCE})
-target_link_libraries(rpcss epm_server irot_server pseh wine)
+target_link_libraries(rpcss epm_server irot_server ${PSEH_LIB} wine)
set_module_type(rpcss win32cui)
add_executable(umpnpmgr umpnpmgr.c umpnpmgr.rc)
-target_link_libraries(umpnpmgr pnp_server wdmguid pseh)
+target_link_libraries(umpnpmgr pnp_server wdmguid ${PSEH_LIB})
set_module_type(umpnpmgr win32cui)
add_importlibs(umpnpmgr
add_executable(wlansvc wlansvc.c rpcserver.c)
-target_link_libraries(wlansvc wlansvc_server pseh)
+target_link_libraries(wlansvc wlansvc_server ${PSEH_LIB})
set_module_type(wlansvc win32cui)
add_importlibs(wlansvc
add_executable(vmwinst vmwinst.c vmwinst.rc)
-target_link_libraries(vmwinst pseh)
+target_link_libraries(vmwinst ${PSEH_LIB})
set_module_type(vmwinst win32gui)
add_importlibs(vmwinst
target_link_libraries(services
svcctl_server
- pseh)
+ ${PSEH_LIB})
add_pch(services ${CMAKE_CURRENT_SOURCE_DIR}/services.h ${SOURCE})
strmiids
uuid
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(quartz
msvcrt
target_link_libraries(ntdll
ntdllsys
libcntpr
- pseh)
+ ${PSEH_LIB})
add_pch(ntdll ${CMAKE_CURRENT_SOURCE_DIR}/include/ntdll.h ${SOURCE})
add_dependencies(ntdll ntstatus)
add_minicd_target(ntdll reactos/system32 ntdll.dll)
add_cab_target(ntdll 1)
-add_importlib_target(ntdll)
+add_importlib_def(${CMAKE_CURRENT_BINARY_DIR}/ntdll.def)
actxprxy_proxy
uuid
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(actxprxy
rpcrt4
GetEffectiveRightsFromAclA
GetEffectiveRightsFromAclW
GetEventLogInformation
- GetExplicitEntriesFromAclAadvapi32.GetExplicitEntriesFromAclW
+ GetExplicitEntriesFromAclA=GetExplicitEntriesFromAclW
GetExplicitEntriesFromAclW
GetFileSecurityA
GetFileSecurityW
GetSecurityDescriptorControl
GetSecurityDescriptorDacl
GetSecurityDescriptorGroup
- GetSecurityDescriptorLengthtdll.RtlLengthSecurityDescriptor
+ GetSecurityDescriptorLengtht=ntdll.RtlLengthSecurityDescriptor
GetSecurityDescriptorOwner
GetSecurityDescriptorRMControl
GetSecurityDescriptorSacl
InitiateSystemShutdownW
InstallApplication=__wine_stub_advapi32_dll_318
IsProcessRestricted=__wine_stub_advapi32_dll_319
- IsTextUnicodentdll.RtlIsTextUnicode
+ IsTextUnicode=ntdll.RtlIsTextUnicode
IsTokenRestricted
IsTokenUntrusted=__wine_stub_advapi32_dll_322
IsValidAcl
MakeAbsoluteSD
MakeAbsoluteSD2
MakeSelfRelativeSD
- MapGenericMasktdll.RtlMapGenericMask
+ MapGenericMask=ntdll.RtlMapGenericMask
NotifyBootConfigStatus
NotifyChangeEventLog
ObjectCloseAuditAlarmA
target_link_libraries(crypt32
wine
- pseh
+ ${PSEH_LIB}
oldnames)
add_importlibs(crypt32 user32 advapi32 msvcrt kernel32 ntdll)
target_link_libraries(dbghelp
wine
- pseh
+ ${PSEH_LIB}
oldnames)
add_importlibs(dbghelp psapi version msvcrt kernel32 ntdll)
target_link_libraries(gdi32
win32ksys
dxguid
- pseh)
+ ${PSEH_LIB})
add_importlibs(gdi32 user32 advapi32 kernel32 ntdll)
add_pch(gdi32 ${CMAKE_CURRENT_SOURCE_DIR}/include/precomp.h ${SOURCE})
set_module_type(kernel32 win32dll)
-target_link_libraries(kernel32 pseh)
+target_link_libraries(kernel32 ${PSEH_LIB})
add_importlibs(kernel32 ntdll)
add_pch(kernel32 ${CMAKE_CURRENT_SOURCE_DIR}/k32.h ${SOURCE})
add_dependencies(kernel32 errcodes)
add_cab_target(kernel32 1)
-add_importlib_target(kernel32)
+add_importlib_def(${CMAKE_CURRENT_BINARY_DIR}/kernel32.def)
target_link_libraries(lsasrv
lsa_server
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(lsasrv rpcrt4 kernel32 ntdll)
add_dependencies(lsasrv psdk buildno_header)
${CMAKE_CURRENT_SOURCE_DIR}/msvcrt.def
crt
wine
- pseh)
+ ${PSEH_LIB})
add_pch(msvcrt ${CMAKE_CURRENT_SOURCE_DIR}/precomp.h ${SOURCE})
add_importlibs(msvcrt kernel32 ntdll)
irot_client
ole32_proxy
uuid
- pseh)
+ ${PSEH_LIB})
add_importlibs(ole32 advapi32 user32 gdi32 rpcrt4 msvcrt kernel32 ntdll)
wine
wineldr
uuid
- pseh)
+ ${PSEH_LIB})
add_importlibs(oleaut32 windowscodecs ole32 rpcrt4 user32 gdi32 advapi32 comctl32 urlmon msvcrt kernel32 ntdll)
target_link_libraries(psapi
epsapi
- pseh)
+ ${PSEH_LIB})
add_importlibs(psapi kernel32 ntdll)
add_pch(psapi ${CMAKE_CURRENT_SOURCE_DIR}/precomp.h ${SOURCE})
wine
uuid
epm_client
- pseh)
+ ${PSEH_LIB})
add_importlibs(rpcrt4 msvcrt user32 advapi32 secur32 iphlpapi ws2_32 kernel32 ntdll)
add_dependencies(rpcrt4 winesdk)
pnp_client
uuid
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(setupapi
msvcrt
sti_proxy
wine
uuid
- pseh)
+ ${PSEH_LIB})
add_importlibs(sti
ole32
target_link_libraries(syssetup
uuid
- pseh)
+ ${PSEH_LIB})
add_importlibs(syssetup
msvcrt
urlmon_proxy
uuid
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(urlmon
rpcrt4
target_link_libraries(user32
wine
win32ksys
- pseh)
+ ${PSEH_LIB})
add_pch(user32 ${CMAKE_CURRENT_SOURCE_DIR}/include/user32.h ${SOURCE})
add_importlibs(user32 gdi32 advapi32 imm32 kernel32 ntdll)
target_link_libraries(wininet
wine
zlib
- pseh)
+ ${PSEH_LIB})
add_importlibs(wininet mpr shlwapi shell32 user32 advapi32 secur32 crypt32 ws2_32 msvcrt kernel32 ntdll)
target_link_libraries(winmm
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(winmm advapi32 user32 msvcrt kernel32 ntdll)
target_link_libraries(wintrust
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(wintrust crypt32 cryptui user32 advapi32 imagehlp msvcrt kernel32 ntdll)
target_link_libraries(wlanapi
wlansvc_client
wine
- pseh)
+ ${PSEH_LIB})
add_importlibs(wlanapi rpcrt4 kernel32 ntdll)
add_dependencies(wlanapi psdk buildno_header)
set_target_properties(null PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols" SUFFIX ".sys")
target_link_libraries(null
- pseh
+ ${PSEH_LIB}
-lntoskrnl
-lhal)
set_target_properties(fastfat_new PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys")
target_link_libraries(fastfat_new
- pseh
+ ${PSEH_LIB}
fullfat)
add_importlibs(fastfat_new ntoskrnl hal)
set_module_type(kbdclass kernelmodedriver)
-target_link_libraries(kbdclass pseh)
+target_link_libraries(kbdclass ${PSEH_LIB})
add_importlibs(kbdclass ntoskrnl hal)
set_module_type(mouclass kernelmodedriver)
-target_link_libraries(mouclass pseh)
+target_link_libraries(mouclass ${PSEH_LIB})
add_importlibs(mouclass ntoskrnl hal)
target_link_libraries(ks
${CMAKE_CURRENT_SOURCE_DIR}/ks.def
- pseh)
+ ${PSEH_LIB})
add_importlibs(ks ntoskrnl hal msvcrt)
add_dependencies(ks psdk bugcodes)
set_module_type(afd kernelmodedriver)
target_link_libraries(afd
- pseh
+ ${PSEH_LIB}
-lntoskrnl
-lhal)
target_link_libraries(tcpip
ip
oskittcp
- pseh
+ ${PSEH_LIB}
chew
-lndis
-lntoskrnl
spec2def(classpnp.sys class.spec)
add_library(classpnp SHARED ${SOURCE})
-target_link_libraries(classpnp pseh libcntpr)
+target_link_libraries(classpnp ${PSEH_LIB} libcntpr)
set_module_type(classpnp kernelmodedriver)
target_link_libraries(portcls
libcntpr
- pseh)
+ ${PSEH_LIB})
if(MSVC)
set_target_properties(portcls PROPERTIES COMPILE_FLAGS "/GR-")
target_link_libraries(wdmaud
mmixer
libcntpr
- pseh)
+ ${PSEH_LIB})
add_importlibs(wdmaud ntoskrnl ks hal)
add_dependencies(wdmaud psdk bugcodes)
set(IDL_SERVER_ARG -s -S) #.c for server library
set(IDL_CLIENT_ARG -c -C) #.c for stub client library
-macro(add_importlib_target _name)
+macro(add_importlib_def _def_file)
# empty for now, while import libs are shipped
endmacro()
+#pseh lib, needed with mingw
+set(PSEH_LIB "pseh")
+
endif()
set(IDL_CLIENT_ARG /cstub) #.c for stub client library\r
\r
\r
-macro(add_importlib_target _name)\r
- add_custom_command(\r
- OUTPUT ${CMAKE_BINARY_DIR}/importlibs/lib${_name}.lib\r
- COMMAND LINK /LIB /MACHINE:X86 /DEF:${CMAKE_CURRENT_BINARY_DIR}/${_name}.def /OUT:${CMAKE_BINARY_DIR}/importlibs/lib${_name}.lib\r
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_name}.def\r
- )\r
- add_custom_target(lib${_name}\r
- DEPENDS ${CMAKE_BINARY_DIR}/importlibs/lib${_name}.lib\r
+macro(add_importlib_def _def_file)\r
+ get_filename_component(_name ${_def_file} NAME_WE)\r
+ add_custom_target(\r
+ lib${_name}\r
+ COMMAND LINK /LIB /MACHINE:X86 /DEF:${CMAKE_CURRENT_BINARY_DIR}/${_file}.def /OUT:${CMAKE_BINARY_DIR}/importlibs/lib${_name}.lib\r
+ DEPENDS ${_def_file}\r
)\r
endmacro()\r
\r
macro(add_importlibs MODULE)\r
foreach(LIB ${ARGN})\r
target_link_libraries(${MODULE} ${CMAKE_BINARY_DIR}/importlibs/lib${LIB}.lib)\r
- add_dependencies(${MODULE} lib${LIB})\r
+ #add_dependencies(${MODULE} lib${LIB})\r
endforeach()\r
endmacro()\r
\r
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/importlibs)\r
\r
+#pseh workaround\r
+set(PSEH_LIB "")\r
+\r
endif()\r
\r
target_link_libraries(ntoskrnl
cportlib
csq
- pseh
+ ${PSEH_LIB}
cmlib
rtl
rossym
add_library(csrsrv SHARED ${CMAKE_CURRENT_BINARY_DIR}/csrsrv_srv.h.gch ${SOURCE})
-target_link_libraries(csrsrv pseh)
+target_link_libraries(csrsrv ${PSEH_LIB})
set_module_type(csrsrv nativedll)
target_link_libraries(win32csr
win32ksys
- pseh)
+ ${PSEH_LIB})
set_module_type(win32csr win32dll)
target_link_libraries(win32k
${CMAKE_CURRENT_SOURCE_DIR}/win32k_i386.def
- pseh
+ ${PSEH_LIB}
dxguid
libcntpr)