- use correct link script file for freeldr and setupldr
- use correct definition file for advapi32
- don't specify name to add_bootcd_target if not needed
- portcls is not a kernel mode driver
- Disable stcall fixup, except for mesa32 which requires it
- remove an useless file from minihal, add a forgotten one to freeldr
svn path=/branches/cmake-bringup/; revision=49615
freeldr/freeldr/disk/disk.c
freeldr/freeldr/disk/partition.c
freeldr/freeldr/disk/ramdisk.c
freeldr/freeldr/disk/disk.c
freeldr/freeldr/disk/partition.c
freeldr/freeldr/disk/ramdisk.c
+ freeldr/freeldr/disk/scsiport.c
freeldr/freeldr/fs/ext2.c
freeldr/freeldr/fs/fat.c
freeldr/freeldr/fs/fs.c
freeldr/freeldr/fs/ext2.c
freeldr/freeldr/fs/fat.c
freeldr/freeldr/fs/fs.c
${FREELDR_SOURCE})
if(NOT MSVC)
${FREELDR_SOURCE})
if(NOT MSVC)
-set_target_properties(freeldr PROPERTIES LINK_FLAGS "-Wl,--strip-all -Wl,--exclude-all-symbols -Wl,--file-alignment,0x1000 -Wl,-T,${REACTOS_SOURCE_DIR}/global.lds" SUFFIX ".sys")
+set_target_properties(freeldr PROPERTIES LINK_FLAGS "-Wl,--strip-all -Wl,--exclude-all-symbols -Wl,--file-alignment,0x1000 -Wl,-T,${CMAKE_CURRENT_SOURCE_DIR}/freeldr/freeldr/freeldr_i386.lnk" SUFFIX ".sys")
set_image_base(freeldr 0x8000)
else()
set_target_properties(freeldr PROPERTIES LINK_FLAGS "/DRIVER /FIXED /ALIGN:0x400 /SECTION:.text,ERW /SECTION:.data,RW /MERGE:.text16=.text /MERGE:.data=.text /MERGE:.rdata=.text /MERGE:.bss=.text /SUBSYSTEM:BOOT_APPLICATION" SUFFIX ".sys")
set_image_base(freeldr 0x8000)
else()
set_target_properties(freeldr PROPERTIES LINK_FLAGS "/DRIVER /FIXED /ALIGN:0x400 /SECTION:.text,ERW /SECTION:.data,RW /MERGE:.text16=.text /MERGE:.data=.text /MERGE:.rdata=.text /MERGE:.bss=.text /SUBSYSTEM:BOOT_APPLICATION" SUFFIX ".sys")
add_library(setupldr SHARED ${SETUPLDR_SOURCE})
if(NOT MSVC)
add_library(setupldr SHARED ${SETUPLDR_SOURCE})
if(NOT MSVC)
-set_target_properties(setupldr PROPERTIES LINK_FLAGS "-Wl,--strip-all -Wl,--exclude-all-symbols -Wl,--file-alignment,0x1000 -Wl,-T,${REACTOS_SOURCE_DIR}/global.lds" SUFFIX ".sys" COMPILE_DEFINITIONS "FREELDR_REACTOS_SETUP")
+set_target_properties(setupldr PROPERTIES LINK_FLAGS "-Wl,--strip-all -Wl,--exclude-all-symbols -Wl,--file-alignment,0x1000 -Wl,-T,${CMAKE_CURRENT_SOURCE_DIR}/freeldr/freeldr/freeldr_i386.lnk" SUFFIX ".sys" COMPILE_DEFINITIONS "FREELDR_REACTOS_SETUP")
set_image_base(setupldr 0x8000)
else()
set_target_properties(setupldr PROPERTIES LINK_FLAGS "/SECTION:.text,ERWP,ALIGN=0x1000" SUFFIX ".sys" COMPILE_DEFINITIONS "FREELDR_REACTOS_SETUP")
endif()
set_subsystem(setupldr native)
set_image_base(setupldr 0x8000)
else()
set_target_properties(setupldr PROPERTIES LINK_FLAGS "/SECTION:.text,ERWP,ALIGN=0x1000" SUFFIX ".sys" COMPILE_DEFINITIONS "FREELDR_REACTOS_SETUP")
endif()
set_subsystem(setupldr native)
-set_entrypoint(freeldr mainCRTStartup)
+set_entrypoint(setupldr mainCRTStartup)
if(ARCH MATCHES i386)
target_link_libraries(setupldr mini_hal)
if(ARCH MATCHES i386)
target_link_libraries(setupldr mini_hal)
add_definitions(-DGL_NO_STDCALL)
endif(ARCH MATCHES i386)
add_definitions(-DGL_NO_STDCALL)
endif(ARCH MATCHES i386)
+if(NOT MSVC)
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS_INIT} -Wl,--enable-stdcall-fixup")
+endif()
+
include_directories(
BEFORE include
src
include_directories(
BEFORE include
src
token/token.c
advapi32_stubs.c
advapi32.rc
token/token.c
advapi32_stubs.c
advapi32.rc
+ ${CMAKE_CURRENT_BINARY_DIR}/advapi32.def)
if(NOT MSVC)
set_source_files_properties(advapi32.def PROPERTIES EXTERNAL_OBJECT TRUE)
if(NOT MSVC)
set_source_files_properties(advapi32.def PROPERTIES EXTERNAL_OBJECT TRUE)
add_library(i8042prt SHARED
createclose.c
i8042prt.c
add_library(i8042prt SHARED
createclose.c
i8042prt.c
set_module_type(i8042prt kernelmodedriver)
add_importlibs(i8042prt ntoskrnl hal)
set_module_type(i8042prt kernelmodedriver)
add_importlibs(i8042prt ntoskrnl hal)
-add_minicd_target(i8042prt reactos i8042prt.sys)
+add_minicd_target(i8042prt reactos)
add_livecd_target(i8042prt reactos/system32/drivers)
\ No newline at end of file
add_livecd_target(i8042prt reactos/system32/drivers)
\ No newline at end of file
set_target_properties(portcls PROPERTIES COMPILE_FLAGS "-fno-exceptions -fno-rtti")
endif(MSVC)
set_target_properties(portcls PROPERTIES COMPILE_FLAGS "-fno-exceptions -fno-rtti")
endif(MSVC)
-set_module_type(portcls kernelmodedriver)
+set_entrypoint(portcls 0)
+set_image_base(portcls 0x00010000)
+set_subsystem(portcls native)
+set_target_properties(portcls PROPERTIES SUFFIX ".sys")
add_importlibs(portcls ntoskrnl ks drmk hal stdc++ gcc msvcrt)
add_importlibs(portcls ntoskrnl ks drmk hal stdc++ gcc msvcrt)
set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
set(CMAKE_EXE_LINKER_FLAGS "-nodefaultlibs -nostdlib -Wl,--enable-auto-image-base -Wl,--kill-at -Wl,--disable-auto-import")
# -Wl,-T,${REACTOS_SOURCE_DIR}/global.lds
set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
set(CMAKE_EXE_LINKER_FLAGS "-nodefaultlibs -nostdlib -Wl,--enable-auto-image-base -Wl,--kill-at -Wl,--disable-auto-import")
# -Wl,-T,${REACTOS_SOURCE_DIR}/global.lds
+set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS_INIT} -Wl,--disable-stdcall-fixup")
# Compiler Core
add_definitions(-pipe -fms-extensions)
# Compiler Core
add_definitions(-pipe -fms-extensions)
set_target_properties(${MODULE} PROPERTIES SUFFIX ".cpl")
endif()
if(${TYPE} MATCHES kernelmodedriver)
set_target_properties(${MODULE} PROPERTIES SUFFIX ".cpl")
endif()
if(${TYPE} MATCHES kernelmodedriver)
- set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-Wl,--exclude-all-symbols" SUFFIX ".sys")
+ set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-Wl,--exclude-all-symbols -Wl,-file-alignment=0x1000 -Wl,-section-alignment=0x1000" SUFFIX ".sys")
set_entrypoint(${MODULE} DriverEntry@8)
set_subsystem(${MODULE} native)
set_image_base(${MODULE} 0x00010000)
set_entrypoint(${MODULE} DriverEntry@8)
set_subsystem(${MODULE} native)
set_image_base(${MODULE} 0x00010000)
halx86/generic/legacy/bus/cmosbus.c
halx86/generic/legacy/bus/isabus.c
halx86/generic/legacy/bus/pcibus.c
halx86/generic/legacy/bus/cmosbus.c
halx86/generic/legacy/bus/isabus.c
halx86/generic/legacy/bus/pcibus.c
- halx86/generic/legacy/bus/pcidata.c
halx86/generic/legacy/bus/sysbus.c
halx86/generic/legacy/bussupp.c
halx86/generic/beep.c
halx86/generic/legacy/bus/sysbus.c
halx86/generic/legacy/bussupp.c
halx86/generic/beep.c
set(CMAKE_CXX_STANDARD_LIBRARIES "" CACHE STRING "Standard C++ Libraries")
if(ARCH MATCHES i386)
set(CMAKE_CXX_STANDARD_LIBRARIES "" CACHE STRING "Standard C++ Libraries")
if(ARCH MATCHES i386)
-set(CMAKE_SHARED_LINKER_FLAGS_INIT "-nodefaultlibs -nostdlib -Wl,--enable-auto-image-base -Wl,--enable-stdcall-fixup -Wl,--kill-at -Wl,--disable-auto-import")
+set(CMAKE_SHARED_LINKER_FLAGS_INIT "-nodefaultlibs -nostdlib -Wl,--enable-auto-image-base -Wl,--kill-at -Wl,--disable-auto-import")
#-Wl,-T,${REACTOS_SOURCE_DIR}/global.lds
elseif(ARCH MATCHES amd64)
#-Wl,-T,${REACTOS_SOURCE_DIR}/global.lds
elseif(ARCH MATCHES amd64)
-set(CMAKE_SHARED_LINKER_FLAGS_INIT "-nodefaultlibs -nostdlib -Wl,--enable-auto-image-base -Wl,--enable-stdcall-fixup -Wl,--kill-at -Wl,--disable-auto-import")
+set(CMAKE_SHARED_LINKER_FLAGS_INIT "-nodefaultlibs -nostdlib -Wl,--enable-auto-image-base -Wl,--kill-at -Wl,--disable-auto-import")
endif(ARCH MATCHES i386)
# adjust the default behaviour of the FIND_XXX() commands:
endif(ARCH MATCHES i386)
# adjust the default behaviour of the FIND_XXX() commands: