mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2026-06-16 18:03:44 +08:00
add posixlib
This commit is contained in:
committed by
Simon Goldschmidt
parent
6a350a0278
commit
427b4f9b08
78
contrib/ports/unix/posixlib/CMakeLists.txt
Normal file
78
contrib/ports/unix/posixlib/CMakeLists.txt
Normal file
@@ -0,0 +1,78 @@
|
||||
cmake_minimum_required(VERSION 3.8)
|
||||
project(liblwip
|
||||
VERSION 2.2.0
|
||||
DESCRIPTION "lwip library for linux"
|
||||
HOMEPAGE_URL "http://wiki.virtualsquare.org"
|
||||
LANGUAGES C)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
include(CheckIncludeFile)
|
||||
|
||||
set (BUILD_SHARED_LIBS ON)
|
||||
|
||||
if (NOT CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
message(FATAL_ERROR "Lwip shared library is only working on Linux or the Hurd")
|
||||
endif()
|
||||
|
||||
set(LWIP_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../..)
|
||||
|
||||
include(${LWIP_DIR}/contrib/ports/CMakeCommon.cmake)
|
||||
|
||||
set (LWIP_DEFINITIONS -DLWIP_DEBUG)
|
||||
set (LWIP_INCLUDE_DIRS
|
||||
"include"
|
||||
"${LWIP_DIR}/src/include"
|
||||
"${LWIP_CONTRIB_DIR}/"
|
||||
"${LWIP_CONTRIB_DIR}/ports/unix/port/include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/"
|
||||
)
|
||||
|
||||
set (LWIP_EXCLUDE_SLIPIF TRUE)
|
||||
include(${LWIP_CONTRIB_DIR}/ports/unix/Filelists.cmake)
|
||||
include(${LWIP_DIR}/src/Filelists.cmake)
|
||||
|
||||
add_library(lwip ${lwipnoapps_SRCS} ${lwipcontribportunix_SRCS} ${lwipcontribportunixnetifs_SRCS})
|
||||
target_compile_options(lwip PRIVATE ${LWIP_COMPILER_FLAGS})
|
||||
target_compile_definitions(lwip PRIVATE ${LWIP_DEFINITIONS} ${LWIP_MBEDTLS_DEFINITIONS})
|
||||
target_include_directories(lwip PRIVATE ${LWIP_INCLUDE_DIRS} ${LWIP_MBEDTLS_INCLUDE_DIRS})
|
||||
target_link_libraries(lwip ${LWIP_SANITIZER_LIBS})
|
||||
|
||||
find_library(LIBPTHREAD pthread)
|
||||
target_link_libraries(lwip ${LIBPTHREAD})
|
||||
|
||||
install(TARGETS lwip
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
|
||||
set_target_properties(lwip PROPERTIES VERSION ${PROJECT_VERSION}
|
||||
SOVERSION ${PROJECT_VERSION_MAJOR})
|
||||
|
||||
install(DIRECTORY "${LWIP_DIR}/src/include/lwip"
|
||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lwip"
|
||||
FILES_MATCHING PATTERN "*.h"
|
||||
)
|
||||
|
||||
install(DIRECTORY "${LWIP_DIR}/src/include/netif"
|
||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lwip"
|
||||
FILES_MATCHING PATTERN "*.h"
|
||||
)
|
||||
|
||||
install(FILES lwipopts.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lwip")
|
||||
|
||||
install(DIRECTORY "${LWIP_DIR}/contrib/ports/unix/port/include/arch"
|
||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lwip"
|
||||
FILES_MATCHING PATTERN "*.h"
|
||||
)
|
||||
|
||||
install(DIRECTORY "${LWIP_DIR}/contrib/ports/unix/port/include/netif"
|
||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lwip"
|
||||
FILES_MATCHING PATTERN "*.h"
|
||||
)
|
||||
|
||||
install(DIRECTORY "${LWIP_DIR}/contrib/ports/unix/linuxlib/include/posix"
|
||||
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lwip"
|
||||
FILES_MATCHING PATTERN "*.h"
|
||||
)
|
||||
|
||||
add_custom_target(uninstall
|
||||
"${CMAKE_COMMAND}" -P "${PROJECT_SOURCE_DIR}/Uninstall.cmake")
|
||||
|
||||
Reference in New Issue
Block a user