CMakeLists.txt 978 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. cmake_minimum_required(VERSION 2.8.12)
  2. project(miniupnpc C)
  3. set(MINIUPNPC_VERSION 1.9)
  4. set(MINIUPNPC_API_VERSION 14)
  5. if(UNIX)
  6. add_definitions(-DMINIUPNPC_SET_SOCKET_TIMEOUT)
  7. add_definitions(-D_BSD_SOURCE -D_POSIX_C_SOURCE=1)
  8. elseif(WIN32)
  9. add_definitions(-D_WIN32_WINNT=0x0501)
  10. find_library(WINSOCK2_LIBRARY NAMES ws2_32 WS2_32 Ws2_32)
  11. find_library(IPHLPAPI_LIBRARY NAMES iphlpapi)
  12. set(LDLIBS ${WINSOCK2_LIBRARY} ${IPHLPAPI_LIBRARY} ${LDLIBS})
  13. endif()
  14. if(APPLE)
  15. add_definitions(-DMACOSX -D_DARWIN_C_SOURCE)
  16. endif()
  17. set(SRCS src/igd_desc_parse.c
  18. src/miniupnpc.c
  19. src/minixml.c
  20. src/minisoap.c
  21. src/minissdpc.c
  22. src/miniwget.c
  23. src/upnpcommands.c
  24. src/upnpdev.c
  25. src/upnpreplyparse.c
  26. src/upnperrors.c
  27. src/connecthostport.c
  28. src/portlistingparse.c
  29. src/receivedata.c)
  30. add_library(miniupnpc STATIC ${SRCS})
  31. dolphin_disable_warnings(miniupnpc)
  32. target_include_directories(miniupnpc PUBLIC src)
  33. add_library(Miniupnpc::miniupnpc ALIAS miniupnpc)