+spec2def(wmilib.sys wmilib.spec)
+list(APPEND SOURCE
+ wmilib.c
+ wmilib.rc
+ ${CMAKE_CURRENT_BINARY_DIR}/wmilib.def)
-spec2def(wmilib ${CMAKE_CURRENT_SOURCE_DIR}/wmilib.spec ${CMAKE_CURRENT_BINARY_DIR}/wmilib.def)
+add_library(wmilib SHARED ${SOURCE})
-add_library(wmilib SHARED wmilib.c wmilib.rc)
+if(NOT MSVC)
+ set_module_type(wmilib kernelmodedriver)
+else()
+ set_target_properties(wmilib PROPERTIES SUFFIX ".sys")
+ set_subsystem(wmilib native)
+ set_image_base(wmilib 0x00010000)
+ add_linkerflag(wmilib "/DRIVER")
+ add_dependencies(wmilib bugcodes)
+ target_link_libraries(wmilib msvcsup)
+ add_dependencies(wmilib psdk)
+endif()
-set_target_properties(wmilib PROPERTIES LINK_FLAGS "-Wl,-entry,0 -Wl,--image-base,0x00010000 -Wl,--subsystem,native" SUFFIX ".sys")
+set_entrypoint(wmilib 0)
+set_target_properties(wmilib PROPERTIES SUFFIX ".sys")
+add_importlibs(wmilib ntoskrnl)
+add_importlib_target(wmilib.spec)
-target_link_libraries(wmilib
- ${CMAKE_CURRENT_BINARY_DIR}/wmilib.def
- -lntoskrnl)
-
-add_dependencies(wmilib wmilib_def psdk buildno_header bugcodes)
+add_cd_file(TARGET wmilib DESTINATION reactos/system32/drivers FOR all)