Mercurial > hg > freeDiameter
annotate extensions/CMakeLists.txt @ 304:ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Fri, 14 May 2010 17:26:53 +0900 |
parents | f433bc04eb6a |
children | ac6e9cc9c3ba |
rev | line source |
---|---|
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
1 PROJECT("freeDiameter extensions" C) |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
2 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
3 # We want all resulting objects in the same folder |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
4 SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}) |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
5 |
9
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
6 # Use the macro FD_ADD_EXTENSION(name files...) to create an extension |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
7 # It is equivalent to add_library with the appropriate parameters |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
8 # and naming conventions (.fdx : FreeDiameter eXtension) |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
9 MACRO(FD_ADD_EXTENSION EXTNAME) |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
10 ADD_LIBRARY(${EXTNAME} MODULE ${ARGN}) |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
11 SET_TARGET_PROPERTIES(${EXTNAME} PROPERTIES PREFIX "" ) |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
12 SET_TARGET_PROPERTIES(${EXTNAME} PROPERTIES SUFFIX ".fdx" ) |
fc7c18867cf7
New extension mechanism committed
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
8
diff
changeset
|
13 ENDMACRO(FD_ADD_EXTENSION) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
14 |
238
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
15 # The extensions include the headers of freeDiameter that contains gnutls objects |
283
f433bc04eb6a
Renamed module to align with distribution shiped file
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
279
diff
changeset
|
16 FIND_PACKAGE(GnuTLS REQUIRED) |
238
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
17 INCLUDE_DIRECTORIES(${GNUTLS_INCLUDE_DIRS}) |
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
18 find_path(GCRYPT_INCLUDE_DIR NAMES gcrypt.h) |
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
19 If ( NOT GCRYPT_INCLUDE_DIR ) |
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
20 MESSAGE(SEND_ERROR "Unable to find gcrypt.h, please install libgcrypt-dev or equivalent") |
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
21 Endif ( NOT GCRYPT_INCLUDE_DIR ) |
304
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
22 MARK_AS_ADVANCED(GCRYPT_INCLUDE_DIR) |
238
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
23 INCLUDE_DIRECTORIES(${GCRYPT_INCLUDE_DIR}) |
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
167
diff
changeset
|
24 |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
25 ########################### |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
26 # Extensions section |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
27 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
28 #### |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
29 # Diameter applications dictionary |
254
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
30 |
10
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
31 OPTION(BUILD_DICT_NASREQ "Build NASREQ (RFC4005) Dictionary definitions?" ON) |
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
32 IF (BUILD_DICT_NASREQ) |
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
33 SUBDIRS(dict_nasreq) |
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
34 ENDIF (BUILD_DICT_NASREQ) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
35 |
10
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
36 OPTION(BUILD_DICT_EAP "Build Diameter EAP (RFC4072) Dictionary definitions?" ON) |
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
37 IF (BUILD_DICT_EAP) |
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
38 SUBDIRS(dict_eap) |
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
39 ENDIF (BUILD_DICT_EAP) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
40 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
41 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
42 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
43 #### |
254
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
44 # Diameter applications |
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
45 |
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
46 OPTION(BUILD_APP_RADGW "Build app_radgw? (one-way RADIUS/Diameter gateway - RADIUS NAS <-> Diameter server)" OFF) |
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
47 IF (BUILD_APP_RADGW) |
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
48 SUBDIRS(app_radgw) |
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
49 ENDIF (BUILD_APP_RADGW) |
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
50 |
283
f433bc04eb6a
Renamed module to align with distribution shiped file
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
279
diff
changeset
|
51 OPTION(BUILD_APP_ACCT "Build app_acct? (simple accounting application that stores accounting records in flat database)" OFF) |
f433bc04eb6a
Renamed module to align with distribution shiped file
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
279
diff
changeset
|
52 IF (BUILD_APP_ACCT) |
f433bc04eb6a
Renamed module to align with distribution shiped file
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
279
diff
changeset
|
53 SUBDIRS(app_acct) |
f433bc04eb6a
Renamed module to align with distribution shiped file
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
279
diff
changeset
|
54 ENDIF (BUILD_APP_ACCT) |
f433bc04eb6a
Renamed module to align with distribution shiped file
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
279
diff
changeset
|
55 |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
56 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
57 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
58 #### |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
59 # Routing extensions |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
60 |
167
967e579beb64
Backup work in progress on rt_default
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
161
diff
changeset
|
61 OPTION(BUILD_RT_DEFAULT "Build rt_default? (Configurable routing rules for freeDiameter)" ON) |
967e579beb64
Backup work in progress on rt_default
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
161
diff
changeset
|
62 IF (BUILD_RT_DEFAULT) |
967e579beb64
Backup work in progress on rt_default
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
161
diff
changeset
|
63 SUBDIRS(rt_default) |
967e579beb64
Backup work in progress on rt_default
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
161
diff
changeset
|
64 ENDIF (BUILD_RT_DEFAULT) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
65 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
66 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
67 #### |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
68 # Peers security extensions |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
69 |
161
645ff1487c23
Draft for ACL white-list extension
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
120
diff
changeset
|
70 OPTION(BUILD_ACL_WL "Build acl_wl? (White-list of remote connecting peers)" ON) |
645ff1487c23
Draft for ACL white-list extension
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
120
diff
changeset
|
71 IF (BUILD_ACL_WL) |
645ff1487c23
Draft for ACL white-list extension
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
120
diff
changeset
|
72 SUBDIRS(acl_wl) |
645ff1487c23
Draft for ACL white-list extension
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
120
diff
changeset
|
73 ENDIF (BUILD_ACL_WL) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
74 |
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
75 |
254
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
76 |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
77 #### |
254
a857024cb48b
Ported the RADIUS/Diameter translation code from waaad project. Not tested yet. Gateway plugins to come later.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
78 # Debug & test extensions |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
79 |
120
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
80 OPTION(BUILD_DBG_MONITOR "Build dbg_monitor.fdx? (display periodical debug information on the console)" OFF) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
81 IF (BUILD_DBG_MONITOR) |
10
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
82 SUBDIRS(dbg_monitor) |
120
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
83 ENDIF (BUILD_DBG_MONITOR) |
10
c5c99c73c2bf
Added some extensions and functions in the daemon
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
9
diff
changeset
|
84 |
120
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
85 OPTION(BUILD_DBG_RT "Build dbg_rt.fdx? (Routing extension for debugging the routing module)" OFF) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
86 IF (BUILD_DBG_RT) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
87 SUBDIRS(dbg_rt) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
88 ENDIF (BUILD_DBG_RT) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
89 |
120
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
90 OPTION(BUILD_TEST_APP "Build test_app.fdx? (Testing application to send dummy message to another peer, for testing purpose only)" OFF) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
91 IF (BUILD_TEST_APP) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
92 SUBDIRS(test_app) |
d7acdc46134d
Renamed several extensions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
118
diff
changeset
|
93 ENDIF (BUILD_TEST_APP) |
8
3e143f047f78
Backup for the week-end
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
94 |
304
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
95 # The following extension have very little use except for specific tests, so we disable them except in Debug configurations. |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
96 IF (CMAKE_BUILD_TYPE MATCHES "Debug") |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
97 OPTION(BUILD_SAMPLE "Build sample.fdx? (Simple extension to demonstrate extension mechanism, for developpers only)" OFF) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
98 IF (BUILD_SAMPLE) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
99 SUBDIRS(_sample) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
100 ENDIF (BUILD_SAMPLE) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
101 |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
102 OPTION(BUILD_TEST_ACCT "Build test_acct.fdx? (Receive Accounting-Requests and display the data, but no storage)" OFF) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
103 IF (BUILD_TEST_ACCT) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
104 SUBDIRS(test_acct) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
105 ENDIF (BUILD_TEST_ACCT) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
106 |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
107 OPTION(BUILD_TEST_RT_ANY "Build test_rt_any.fdx? (Routing extension randomly sending message to any peer available, for testing purpose only)" OFF) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
108 IF (BUILD_TEST_RT_ANY) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
109 SUBDIRS(test_rt_any) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
110 ENDIF (BUILD_TEST_RT_ANY) |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
111 ENDIF (CMAKE_BUILD_TYPE MATCHES "Debug") |
ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
283
diff
changeset
|
112 |