mirror of
https://github.com/reactos/reactos.git
synced 2024-08-19 18:02:55 +00:00
![Jérôme Gardou](/assets/img/avatar_default.png)
There is no need to compile our DLLs as shared libraries since we are managing symbols exports and imports through spec files. On my system, this reduces the configure-time by a factor of two.
122 lines
3.2 KiB
CMake
122 lines
3.2 KiB
CMake
|
|
include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/drivers
|
|
inc)
|
|
|
|
list(APPEND SOURCE
|
|
src/init.c
|
|
src/ext3/generic.c
|
|
src/ext3/htree.c
|
|
src/ext3/indirect.c
|
|
src/ext3/recover.c
|
|
src/ext4/ext4_bh.c
|
|
src/ext4/ext4_extents.c
|
|
src/ext4/ext4_jbd2.c
|
|
src/ext4/ext4_xattr.c
|
|
src/ext4/extents.c
|
|
src/jbd/recovery.c
|
|
src/jbd/replay.c
|
|
src/jbd/revoke.c
|
|
src/nls/nls_ascii.c
|
|
src/nls/nls_base.c
|
|
src/nls/nls_cp437.c
|
|
src/nls/nls_cp737.c
|
|
src/nls/nls_cp775.c
|
|
src/nls/nls_cp850.c
|
|
src/nls/nls_cp852.c
|
|
src/nls/nls_cp855.c
|
|
src/nls/nls_cp857.c
|
|
src/nls/nls_cp860.c
|
|
src/nls/nls_cp861.c
|
|
src/nls/nls_cp862.c
|
|
src/nls/nls_cp863.c
|
|
src/nls/nls_cp864.c
|
|
src/nls/nls_cp865.c
|
|
src/nls/nls_cp866.c
|
|
src/nls/nls_cp869.c
|
|
src/nls/nls_cp874.c
|
|
src/nls/nls_cp932.c
|
|
src/nls/nls_cp936.c
|
|
src/nls/nls_cp949.c
|
|
src/nls/nls_cp950.c
|
|
src/nls/nls_cp1250.c
|
|
src/nls/nls_cp1251.c
|
|
src/nls/nls_cp1255.c
|
|
src/nls/nls_euc-jp.c
|
|
src/nls/nls_iso8859-1.c
|
|
src/nls/nls_iso8859-2.c
|
|
src/nls/nls_iso8859-3.c
|
|
src/nls/nls_iso8859-4.c
|
|
src/nls/nls_iso8859-5.c
|
|
src/nls/nls_iso8859-6.c
|
|
src/nls/nls_iso8859-7.c
|
|
src/nls/nls_iso8859-9.c
|
|
src/nls/nls_iso8859-13.c
|
|
src/nls/nls_iso8859-14.c
|
|
src/nls/nls_iso8859-15.c
|
|
src/nls/nls_koi8-r.c
|
|
src/nls/nls_koi8-ru.c
|
|
src/nls/nls_koi8-u.c
|
|
src/nls/nls_utf8.c
|
|
src/access.c
|
|
src/block.c
|
|
src/cleanup.c
|
|
src/close.c
|
|
src/cmcb.c
|
|
src/create.c
|
|
src/debug.c
|
|
src/devctl.c
|
|
src/dirctl.c
|
|
src/dispatch.c
|
|
src/ea.c
|
|
src/except.c
|
|
src/fastio.c
|
|
src/fileinfo.c
|
|
src/flush.c
|
|
src/fsctl.c
|
|
src/linux.c
|
|
src/lock.c
|
|
src/memory.c
|
|
src/misc.c
|
|
src/nls.c
|
|
src/pnp.c
|
|
src/rbtree.c
|
|
src/read.c
|
|
src/shutdown.c
|
|
src/volinfo.c
|
|
src/write.c
|
|
inc/ext2fs.h)
|
|
|
|
add_library(ext2fs MODULE ${SOURCE} ext2fs.rc)
|
|
|
|
if(USE_CLANG_CL)
|
|
set_property(SOURCE src/create.c src/fileinfo.c src/memory.c src/read.c APPEND_STRING PROPERTY COMPILE_FLAGS " /fallback")
|
|
endif()
|
|
|
|
if(MSVC AND (NOT USE_CLANG_CL))
|
|
# Disable warnings: "unreferenced local variable", "initialized, but not used variable", "benign include"
|
|
replace_compile_flags("/we4189" " ")
|
|
add_target_compile_flags(ext2fs "/wd4189 /wd4142 /wd4101")
|
|
else()
|
|
add_target_compile_flags(ext2fs "-Wno-pointer-sign -Wno-unused-function")
|
|
add_target_compile_flags(ext2fs "-Wno-unused-variable -Wno-missing-braces")
|
|
if(USE_CLANG_CL)
|
|
add_target_compile_flags(ext2fs "-Wno-unused-value -Wno-parentheses-equality")
|
|
add_target_compile_flags(ext2fs "-Wno-incompatible-pointer-types-discards-qualifiers")
|
|
add_target_compile_flags(ext2fs "-Wno-#pragma-messages -Wno-cast-calling-convention")
|
|
else()
|
|
add_target_compile_flags(ext2fs "-Wno-unused-but-set-variable")
|
|
endif()
|
|
endif()
|
|
|
|
target_link_libraries(ext2fs memcmp ${PSEH_LIB})
|
|
add_definitions(-D__KERNEL__)
|
|
set_module_type(ext2fs kernelmodedriver)
|
|
add_importlibs(ext2fs ntoskrnl hal)
|
|
|
|
if(NOT USE_CLANG_CL)
|
|
# The fallback we have above prevents cl and clang-cl from using the same PCH
|
|
add_pch(ext2fs inc/ext2fs.h SOURCE)
|
|
endif()
|
|
|
|
add_cd_file(TARGET ext2fs DESTINATION reactos/system32/drivers FOR all)
|