summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBalint Reczey <balint@balintreczey.hu>2013-02-24 21:14:17 +0000
committerBalint Reczey <balint@balintreczey.hu>2013-02-24 21:14:17 +0000
commite1d24fdb49f56cd1ff8d10c3c55699ebc4a7e20c (patch)
tree9212aa3422f0a299b13bfd875335f70d7c0f9cad
parent8fdfd9b612ce0d56b7c164c07d0c75b7be89d98a (diff)
downloadwireshark-e1d24fdb49f56cd1ff8d10c3c55699ebc4a7e20c.tar.gz
Generate abi-descriptor.xml-s in CMake builds
svn path=/trunk/; revision=47865
-rw-r--r--Makefile.am.inc2
-rw-r--r--abi-descriptor.template2
-rw-r--r--epan/CMakeLists.txt7
-rw-r--r--wiretap/CMakeLists.txt7
-rw-r--r--wsutil/CMakeLists.txt7
5 files changed, 23 insertions, 2 deletions
diff --git a/Makefile.am.inc b/Makefile.am.inc
index bc287bb292..fd4fb17f1c 100644
--- a/Makefile.am.inc
+++ b/Makefile.am.inc
@@ -48,4 +48,4 @@ am__v_SED_0 = @echo " SED " $@;
# abi-compliance-checker descriptor
INCLUDE_DIRS = $(subst -I,NEWLINE,$(filter -I%, $(CFLAGS) -I$(abs_top_srcdir) -I$(abs_srcdir)))
abi-descriptor.xml: ../abi-descriptor.template
- $(AM_V_SED)sed "s|INCLUDE_DIRS|$(INCLUDE_DIRS)|g;s/NEWLINE/\n /g" $< > $@
+ $(AM_V_SED)sed "s|@INCLUDE_DIRS@|$(INCLUDE_DIRS)|g;s/NEWLINE/\n /g" $< > $@
diff --git a/abi-descriptor.template b/abi-descriptor.template
index dbf7f3841b..1773cd5404 100644
--- a/abi-descriptor.template
+++ b/abi-descriptor.template
@@ -9,7 +9,7 @@
<libs>
{RELPATH}/.libs
</libs>
-<include_paths>INCLUDE_DIRS
+<include_paths>@INCLUDE_DIRS@
</include_paths>
<gcc_options>
-D_U_="__attribute((unused))"
diff --git a/epan/CMakeLists.txt b/epan/CMakeLists.txt
index 9eba37cb2f..0b45a89dab 100644
--- a/epan/CMakeLists.txt
+++ b/epan/CMakeLists.txt
@@ -1543,6 +1543,13 @@ add_library(epan ${LINK_MODE_LIB}
set_target_properties(epan PROPERTIES LINK_FLAGS "${WS_LINK_FLAGS}")
set_target_properties(epan PROPERTIES VERSION "0.0.0" SOVERSION 0)
+# discover and substitute list of include directories for ABI compatibility
+# checks
+get_directory_property(INCLUDE_DIRS INCLUDE_DIRECTORIES)
+list(REMOVE_DUPLICATES INCLUDE_DIRS)
+string(REGEX REPLACE ";" "\n" INCLUDE_DIRS "${INCLUDE_DIRS}")
+configure_file(../abi-descriptor.template abi-descriptor.xml)
+
# By default the name for a library with target name epan will be libepan,
# but Ethereal is now named Wireshark
SET_TARGET_PROPERTIES(epan PROPERTIES OUTPUT_NAME "wireshark")
diff --git a/wiretap/CMakeLists.txt b/wiretap/CMakeLists.txt
index 1a9dc40370..be3976e494 100644
--- a/wiretap/CMakeLists.txt
+++ b/wiretap/CMakeLists.txt
@@ -109,6 +109,13 @@ add_library(wiretap ${LINK_MODE_LIB}
set_target_properties(wiretap PROPERTIES LINK_FLAGS "${WS_LINK_FLAGS}")
set_target_properties(wiretap PROPERTIES VERSION "0.0.0" SOVERSION 0)
+# discover and substitute list of include directories for ABI compatibility
+# checks
+get_directory_property(INCLUDE_DIRS INCLUDE_DIRECTORIES)
+list(REMOVE_DUPLICATES INCLUDE_DIRS)
+string(REGEX REPLACE ";" "\n" INCLUDE_DIRS "${INCLUDE_DIRS}")
+configure_file(../abi-descriptor.template abi-descriptor.xml)
+
target_link_libraries(wiretap ${wiretap_LIBS})
if(NOT ${ENABLE_STATIC})
diff --git a/wsutil/CMakeLists.txt b/wsutil/CMakeLists.txt
index c5035a19d6..4ff35f07c5 100644
--- a/wsutil/CMakeLists.txt
+++ b/wsutil/CMakeLists.txt
@@ -63,6 +63,13 @@ add_library(wsutil ${LINK_MODE_LIB}
set_target_properties(wsutil PROPERTIES LINK_FLAGS "${WS_LINK_FLAGS}")
set_target_properties(wsutil PROPERTIES VERSION "0.0.0" SOVERSION 0)
+# discover and substitute list of include directories for ABI compatibility
+# checks
+get_directory_property(INCLUDE_DIRS INCLUDE_DIRECTORIES)
+list(REMOVE_DUPLICATES INCLUDE_DIRS)
+string(REGEX REPLACE ";" "\n" INCLUDE_DIRS "${INCLUDE_DIRS}")
+configure_file(../abi-descriptor.template abi-descriptor.xml)
+
target_link_libraries(wsutil ${wsutil_LIBS})
if(NOT ${ENABLE_STATIC})