-
+set_unicode()
add_definitions(-D_DLL -D__USE_CRTIMP)
-add_definitions(-DUNICODE -D_UNICODE)
-include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
-include_directories(${REACTOS_SOURCE_DIR}/dll/win32/dhcpcsvc/include)
-include_directories(${REACTOS_SOURCE_DIR}/lib/tdilib)
+include_directories(
+ ${REACTOS_SOURCE_DIR}/include/reactos/wine
+ ${REACTOS_SOURCE_DIR}/dll/win32/dhcpcsvc/include
+ ${REACTOS_SOURCE_DIR}/lib/tdilib)
-spec2def(iphlpapi ${CMAKE_CURRENT_SOURCE_DIR}/iphlpapi.spec ${CMAKE_CURRENT_BINARY_DIR}/iphlpapi.def)
+spec2def(iphlpapi.dll iphlpapi.spec)
-add_library(iphlpapi SHARED
+list(APPEND SOURCE
dhcp_reactos.c
ifenum_reactos.c
ipstats_reactos.c
registry.c
resinfo_reactos.c
route_reactos.c
- iphlpapi.rc)
+ iphlpapi.rc
+ ${CMAKE_CURRENT_BINARY_DIR}/iphlpapi_stubs.c
+ ${CMAKE_CURRENT_BINARY_DIR}/iphlpapi.def)
-set_target_properties(iphlpapi PROPERTIES LINK_FLAGS "-Wl,-entry,_DllMain@12")
+add_library(iphlpapi SHARED ${SOURCE})
-target_link_libraries(iphlpapi
- ${CMAKE_CURRENT_BINARY_DIR}/iphlpapi.def
- wine
- tdilib
- -ldhcpcsvc
- -ladvapi32
- -lws2_32
- mingw_common
- -lmsvcrt)
+set_module_type(iphlpapi win32dll)
-add_dependencies(iphlpapi iphlpapi_def psdk)
+target_link_libraries(iphlpapi wine tdilib)
+add_importlibs(iphlpapi dhcpcsvc advapi32 ws2_32 msvcrt kernel32 ntdll)
+add_cd_file(TARGET iphlpapi DESTINATION reactos/system32)
+add_importlib_target(iphlpapi.spec)