- fix usage of set_entrypoint
- link libpng to ntdll on amd64
- build crtdll and nmidebug only on x86
- silence some linker warnings on MSVC
- compile riched20/msvc-thiscall.c only on x86
- Add WIN64 definition to acpica
- Add ehandler.c to libcntpr

svn path=/trunk/; revision=53396
This commit is contained in:
Timo Kreuzer 2011-08-23 08:13:33 +00:00
parent c47522f9e8
commit a522726b1e
20 changed files with 43 additions and 22 deletions

View file

@ -30,5 +30,8 @@ add_library(libpng SHARED
set_entrypoint(libpng 0) set_entrypoint(libpng 0)
target_link_libraries(libpng zlib) target_link_libraries(libpng zlib)
add_importlibs(libpng msvcrt kernel32) add_importlibs(libpng msvcrt kernel32)
if(ARCH MATCHES amd64)
add_importlibs(libpng ntdll)
endif()
add_dependencies(libpng psdk) add_dependencies(libpng psdk)
add_cd_file(TARGET libpng DESTINATION reactos/system32 FOR all) add_cd_file(TARGET libpng DESTINATION reactos/system32 FOR all)

View file

@ -22,7 +22,9 @@ add_subdirectory(comctl32)
add_subdirectory(comdlg32) add_subdirectory(comdlg32)
add_subdirectory(compstui) add_subdirectory(compstui)
add_subdirectory(credui) add_subdirectory(credui)
add_subdirectory(crtdll) if(ARCH MATCHES i386)
add_subdirectory(crtdll) # only built on x86
endif()
add_subdirectory(crypt32) add_subdirectory(crypt32)
add_subdirectory(cryptdlg) add_subdirectory(cryptdlg)
add_subdirectory(cryptdll) add_subdirectory(cryptdll)
@ -210,7 +212,9 @@ add_subdirectory(usp10)
add_subdirectory(uxtheme) add_subdirectory(uxtheme)
add_subdirectory(vdmdbg) add_subdirectory(vdmdbg)
add_subdirectory(version) add_subdirectory(version)
add_subdirectory(wdmaud.drv) if(ARCH MATCHES i386)
add_subdirectory(wdmaud.drv)
endif()
add_subdirectory(windowscodecs) add_subdirectory(windowscodecs)
add_subdirectory(winemp3.acm) add_subdirectory(winemp3.acm)
add_subdirectory(winfax) add_subdirectory(winfax)

View file

@ -21,7 +21,7 @@ add_library(crtdll SHARED ${SOURCE})
set_module_type(crtdll win32dll) set_module_type(crtdll win32dll)
set_entrypoint(crtdll DllMain@12) set_entrypoint(crtdll DllMain 12)
target_link_libraries(crtdll wine crt) target_link_libraries(crtdll wine crt)

View file

@ -15,7 +15,7 @@ list(APPEND SOURCE
${CMAKE_CURRENT_BINARY_DIR}/fmifs.def) ${CMAKE_CURRENT_BINARY_DIR}/fmifs.def)
add_library(fmifs SHARED ${SOURCE}) add_library(fmifs SHARED ${SOURCE})
set_entrypoint(fmifs InitializeFmIfs@12) set_entrypoint(fmifs InitializeFmIfs 12)
add_importlibs(fmifs kernel32 ntdll) add_importlibs(fmifs kernel32 ntdll)
add_pch(fmifs precomp.h) add_pch(fmifs precomp.h)
add_dependencies(fmifs psdk) add_dependencies(fmifs psdk)

View file

@ -93,7 +93,7 @@ endif(ARCH MATCHES i386)
add_library(kernel32 SHARED ${SOURCE}) add_library(kernel32 SHARED ${SOURCE})
set_entrypoint(kernel32 DllMain@12) set_entrypoint(kernel32 DllMain 12)
set_image_base(kernel32 ${baseaddress_kernel32}) set_image_base(kernel32 ${baseaddress_kernel32})
target_link_libraries(kernel32 wine chkstk ${PSEH_LIB}) target_link_libraries(kernel32 wine chkstk ${PSEH_LIB})

View file

@ -20,7 +20,7 @@ list(APPEND SOURCE
add_library(msacm32 SHARED ${SOURCE}) add_library(msacm32 SHARED ${SOURCE})
set_entrypoint(msacm32 DllMain@12) set_entrypoint(msacm32 DllMain 12)
set_image_base(msacm32 ${baseaddress_msacm32}) set_image_base(msacm32 ${baseaddress_msacm32})
target_link_libraries(msacm32 wine) target_link_libraries(msacm32 wine)

View file

@ -33,7 +33,9 @@ set_image_base(msvcrt ${baseaddress_msvcrt})
target_link_libraries(msvcrt crt wine) target_link_libraries(msvcrt crt wine)
if(NOT MSVC) if(MSVC)
add_linkerflag(msvcrt "/ignore:4102")
else()
target_link_libraries(msvcrt pseh) target_link_libraries(msvcrt pseh)
endif() endif()

View file

@ -20,13 +20,15 @@ list(APPEND SOURCE
${CMAKE_CURRENT_BINARY_DIR}/msvcrt20.def) ${CMAKE_CURRENT_BINARY_DIR}/msvcrt20.def)
add_library(msvcrt20 SHARED ${SOURCE}) add_library(msvcrt20 SHARED ${SOURCE})
set_entrypoint(msvcrt20 DllMain@12) set_entrypoint(msvcrt20 DllMain 12)
set_image_base(msvcrt20 ${baseaddress_msvcrt20}) set_image_base(msvcrt20 ${baseaddress_msvcrt20})
target_link_libraries(msvcrt20 crt wine) target_link_libraries(msvcrt20 crt wine)
if(NOT MSVC) if(MSVC)
target_link_libraries(msvcrt20 pseh) add_linkerflag(msvcrt20 "/ignore:4102")
else()
target_link_libraries(msvcrt20 pseh)
endif() endif()
add_importlibs(msvcrt20 kernel32 ntdll) add_importlibs(msvcrt20 kernel32 ntdll)

View file

@ -21,11 +21,13 @@ list(APPEND SOURCE
add_library(msvcrt40 SHARED ${SOURCE}) add_library(msvcrt40 SHARED ${SOURCE})
set_image_base(msvcrt40 ${baseaddress_msvcrt40}) set_image_base(msvcrt40 ${baseaddress_msvcrt40})
set_entrypoint(msvcrt40 DllMain@12) set_entrypoint(msvcrt40 DllMain 12)
target_link_libraries(msvcrt40 crt wine) target_link_libraries(msvcrt40 crt wine)
if(NOT MSVC) if(MSVC)
add_linkerflag(msvcrt40 "/ignore:4102")
else()
target_link_libraries(msvcrt40 pseh) target_link_libraries(msvcrt40 pseh)
endif() endif()

View file

@ -30,7 +30,9 @@ list(APPEND SOURCE
${CMAKE_CURRENT_BINARY_DIR}/riched20.def) ${CMAKE_CURRENT_BINARY_DIR}/riched20.def)
if(MSVC) if(MSVC)
list(APPEND SOURCE msvc-thiscall.c) if (ARCH MATCHES i386)
list(APPEND SOURCE msvc-thiscall.c)
endif()
set_source_files_properties(txthost.c txtsrv.c PROPERTIES COMPILE_FLAGS "/FImsvc.h") set_source_files_properties(txthost.c txtsrv.c PROPERTIES COMPILE_FLAGS "/FImsvc.h")
endif() endif()

View file

@ -7,6 +7,7 @@ add_subdirectory(kddll)
else() else()
add_subdirectory(kdcom) add_subdirectory(kdcom)
endif() endif()
if(ARCH MATCHES i386)
add_subdirectory(nmidebug) add_subdirectory(nmidebug)
endif()
add_subdirectory(null) add_subdirectory(null)

View file

@ -3,6 +3,10 @@ include_directories(
include include
acpica/include) acpica/include)
if(ARCH MATCHES amd64)
add_definitions(-DWIN64)
endif()
add_library(acpica add_library(acpica
acpica/dispatcher/dsfield.c acpica/dispatcher/dsfield.c
acpica/dispatcher/dsinit.c acpica/dispatcher/dsinit.c

View file

@ -11,7 +11,7 @@ add_library(framebuf SHARED
${CMAKE_CURRENT_BINARY_DIR}/framebuf.def) ${CMAKE_CURRENT_BINARY_DIR}/framebuf.def)
add_pch(framebuf framebuf.h) add_pch(framebuf framebuf.h)
set_entrypoint(framebuf DrvEnableDriver@12) set_entrypoint(framebuf DrvEnableDriver 12)
set_subsystem(framebuf native) set_subsystem(framebuf native)
set_image_base(framebuf 0x00010000) set_image_base(framebuf 0x00010000)
target_link_libraries(framebuf libcntpr) target_link_libraries(framebuf libcntpr)

View file

@ -20,7 +20,7 @@ if(ARCH MATCHES i386)
endif() endif()
endif() endif()
set_entrypoint(framebuf_new DrvEnableDriver@12) set_entrypoint(framebuf_new DrvEnableDriver 12)
set_subsystem(framebuf_new native) set_subsystem(framebuf_new native)
set_image_base(framebuf_new 0x00010000) set_image_base(framebuf_new 0x00010000)

View file

@ -15,7 +15,7 @@ add_library(vgaddi SHARED
vgaddi.rc vgaddi.rc
${CMAKE_CURRENT_BINARY_DIR}/vgaddi.def) ${CMAKE_CURRENT_BINARY_DIR}/vgaddi.def)
set_entrypoint(vgaddi DrvEnableDriver@12) set_entrypoint(vgaddi DrvEnableDriver 12)
set_subsystem(vgaddi native) set_subsystem(vgaddi native)
set_image_base(vgaddi 0x00010000) set_image_base(vgaddi 0x00010000)
add_pch(vgaddi vgaddi.h) add_pch(vgaddi vgaddi.h)

View file

@ -5,7 +5,7 @@ add_library(bmfd SHARED
glyph.c) glyph.c)
add_pch(bmfd bmfd.h) add_pch(bmfd bmfd.h)
set_entrypoint(bmfd BmfdEnableDriver@12) set_entrypoint(bmfd BmfdEnableDriver 12)
set_subsystem(bmfd native) set_subsystem(bmfd native)
set_image_base(bmfd 0x00010000) set_image_base(bmfd 0x00010000)
target_link_libraries(bmfd libcntpr) target_link_libraries(bmfd libcntpr)

View file

@ -11,7 +11,7 @@ add_library(ftfd SHARED
sprintf.c sprintf.c
${CMAKE_CURRENT_BINARY_DIR}/ftfd.def) ${CMAKE_CURRENT_BINARY_DIR}/ftfd.def)
set_entrypoint(ftfd FtfdEnableDriver@12) set_entrypoint(ftfd FtfdEnableDriver 12)
set_subsystem(ftfd native) set_subsystem(ftfd native)
set_image_base(ftfd ${baseaddress_ftfd}) set_image_base(ftfd ${baseaddress_ftfd})

View file

@ -96,7 +96,7 @@ if(ARCH MATCHES i386)
add_pch(hal include/hal.h) add_pch(hal include/hal.h)
add_dependencies(hal psdk bugcodes) add_dependencies(hal psdk bugcodes)
set_entrypoint(hal HalInitSystem@8) set_entrypoint(hal HalInitSystem 8)
set_subsystem(hal native) set_subsystem(hal native)
set_image_base(hal 0x00010000) set_image_base(hal 0x00010000)
add_importlibs(hal ntoskrnl) add_importlibs(hal ntoskrnl)

View file

@ -98,6 +98,7 @@ if(ARCH MATCHES i386)
endif() endif()
elseif(ARCH MATCHES amd64) elseif(ARCH MATCHES amd64)
list(APPEND LIBCNTPR_SOURCE list(APPEND LIBCNTPR_SOURCE
except/amd64/ehandler.c
except/amd64/chkstk_asm.s except/amd64/chkstk_asm.s
except/amd64/seh.s except/amd64/seh.s
setjmp/amd64/setjmp.s setjmp/amd64/setjmp.s

View file

@ -421,7 +421,7 @@ endif()
add_executable(ntoskrnl ${SOURCE}) add_executable(ntoskrnl ${SOURCE})
if (ARCH MATCHES i386) if (ARCH MATCHES i386)
set_entrypoint(ntoskrnl KiSystemStartup@4) set_entrypoint(ntoskrnl KiSystemStartup 4)
else() else()
set_entrypoint(ntoskrnl KiSystemStartup) set_entrypoint(ntoskrnl KiSystemStartup)
endif() endif()