CMakeLists.txt 741 Bytes
Newer Older
1 2 3 4
find_program(DLLTOOL dlltool CMAKE_FIND_ROOT_PATH_BOTH)
if(NOT DLLTOOL)
	message(FATAL_ERROR "Could not find dlltool command")
endif()
5

6
set(LIBWINHTTP_PATH "${PROJECT_BINARY_DIR}/deps/winhttp")
7 8
set(LIBWINHTTP_PATH ${LIBWINHTTP_PATH} PARENT_SCOPE)
file(MAKE_DIRECTORY ${LIBWINHTTP_PATH})
9

10
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
11
	set(WINHTTP_DEF "winhttp64.def")
12
else()
13
	set(WINHTTP_DEF "winhttp.def")
14
endif()
15

16
add_custom_command(
17 18 19
	OUTPUT ${LIBWINHTTP_PATH}/libwinhttp.a
	COMMAND ${DLLTOOL} -d ${WINHTTP_DEF} -k -D winhttp.dll -l libwinhttp.a
	DEPENDS ${WINHTTP_DEF}
20
	WORKING_DIRECTORY ${LIBWINHTTP_PATH})
21

22
set_source_files_properties(
23
	${CMAKE_CURRENT_SOURCE_DIR}/src/transports/winhttp.c
24
	PROPERTIES OBJECT_DEPENDS ${LIBWINHTTP_PATH}/libwinhttp.a)