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(CMAKE_C_COMPILER_ID STREQUAL "MSVC") # Disable warning C4101: 'i': unreferenced local variable # Disable warning C4189: 'sbi': local variable is initialized but not referenced # Disable warning C4267: '=': conversion from 'size_t' to 'USHORT', possible loss of data target_compile_options(ext2fs PRIVATE /wd4101 /wd4189 /wd4267) endif() if(CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID STREQUAL "Clang") target_compile_options(ext2fs PRIVATE -Wno-pointer-sign -Wno-unused-function -Wno-unused-variable -Wno-missing-braces -Wno-unused-but-set-variable) endif() if(CMAKE_C_COMPILER_ID STREQUAL "Clang") target_compile_options(ext2fs PRIVATE -Wno-parentheses-equality -Wno-incompatible-pointer-types-discards-qualifiers "-Wno-#pragma-messages;-Wno-cast-calling-convention") endif() target_link_libraries(ext2fs memcmp ${PSEH_LIB}) add_definitions(-D__KERNEL__ -D_CRT_NO_POSIX_ERROR_CODES -D_CRT_DECLARE_NONSTDC_NAMES=1) set_module_type(ext2fs kernelmodedriver) add_importlibs(ext2fs ntoskrnl hal) add_pch(ext2fs inc/ext2fs.h SOURCE) add_cd_file(TARGET ext2fs DESTINATION reactos/system32/drivers FOR all) add_registry_inf(ext2fs_reg.inf)