blob: f5d472dbd68c6fa9d2e8284584307f43bca10239 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
cmake_minimum_required(VERSION 3.10)
if (CMAKE_BINARY_DIR STREQUAL CMAKE_HOME_DIRECTORY)
message(FATAL_ERROR "Building in source directory is forbidden. Please make separated build directory.")
endif ()
project(accel-ppp C)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fno-strict-aliasing -D_GNU_SOURCE -fPIC -rdynamic -Wno-unused-result")
IF (NOT DEFINED LIB_SUFFIX)
EXECUTE_PROCESS(
COMMAND uname -m
COMMAND tr -d '\n'
OUTPUT_VARIABLE ARCH
)
message(STATUS "'" ${ARCH} "'")
IF (ARCH STREQUAL x86_64)
SET(LIB_SUFFIX 64)
ENDIF (ARCH STREQUAL x86_64)
ENDIF (NOT DEFINED LIB_SUFFIX)
# Set flag if we are building with MUSL
IF (CMAKE_SYSTEM_NAME STREQUAL Linux AND CMAKE_C_COMPILER_ID STREQUAL GNU)
execute_process(
COMMAND sh -c "ldd --version 2>&1 || true"
OUTPUT_VARIABLE LDD_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if (LDD_VERSION MATCHES "[Mm]usl")
set(MUSL ON)
else ()
set(MUSL OFF)
endif ()
message(STATUS "Building with MUSL: ${MUSL}")
ENDIF (CMAKE_SYSTEM_NAME STREQUAL Linux AND CMAKE_C_COMPILER_ID STREQUAL GNU)
#color console example message(FATAL_ERROR "${Esc}[31m Red Text ${Esc}[m Restore Normal Text")
string(ASCII 27 Esc)
#Check libpcre2
find_library(PCRE2_LIBRARY pcre2-8
HINTS ${CMAKE_SOURCE_DIR}/lib/linux/gcc/${BIT}/lib
PATHS ${CMAKE_SOURCE_DIR}/lib/linux/gcc/${BIT}/lib
)
IF(NOT PCRE2_LIBRARY)
message(FATAL_ERROR "${Esc}[31mRequired libpcre not found.\n Install libpcre2-dev and run cmake again${Esc}[m")
ENDIF(NOT PCRE2_LIBRARY)
IF (EXISTS ${CMAKE_HOME_DIRECTORY}/.git AND NOT IGNORE_GIT)
EXECUTE_PROCESS(
COMMAND git describe --tags --always
WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
OUTPUT_VARIABLE ACCEL_PPP_VERSION
)
STRING(STRIP "${ACCEL_PPP_VERSION}" ACCEL_PPP_VERSION)
ELSE (EXISTS ${CMAKE_HOME_DIRECTORY}/.git AND NOT IGNORE_GIT)
SET (ACCEL_PPP_VERSION 1.14.0)
ENDIF (EXISTS ${CMAKE_HOME_DIRECTORY}/.git AND NOT IGNORE_GIT)
# we must include cpack.cmake after generating the ACCEL_PPP_VERSION variable
include(cmake/cpack.cmake)
ADD_DEFINITIONS(-DACCEL_PPP_VERSION="${ACCEL_PPP_VERSION}")
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_BINARY_DIR}/version.h)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
if (NOT BUILD_DRIVER_ONLY)
if (MEMDEBUG)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector -fstack-protector-all")
endif (MEMDEBUG)
find_library(CRYPTO_LIBRARY ssl
HINTS ${CMAKE_SOURCE_DIR}/lib/linux/gcc/${BIT}/lib
PATHS ${CMAKE_SOURCE_DIR}/lib/linux/gcc/${BIT}/lib
)
IF(NOT CRYPTO_LIBRARY)
message(FATAL_ERROR "${Esc}[31mRequired libcrypto-0.9.8 or probably later (openssl-0.9.8) not found.\n Install libssl-dev and run cmake again${Esc}[m")
ENDIF(NOT CRYPTO_LIBRARY)
set(crypto_lib crypto ssl)
add_subdirectory(accel-pppd)
add_subdirectory(accel-cmd)
install(DIRECTORY DESTINATION /var/log/accel-ppp)
endif (NOT BUILD_DRIVER_ONLY)
if (BUILD_PPTP_DRIVER)
add_subdirectory(drivers/pptp)
endif (BUILD_PPTP_DRIVER)
if (BUILD_IPOE_DRIVER)
add_subdirectory(drivers/ipoe)
endif (BUILD_IPOE_DRIVER)
if (BUILD_VLAN_MON_DRIVER)
add_subdirectory(drivers/vlan_mon)
endif ()
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
|