summaryrefslogtreecommitdiffabout
authorMichael Krelin <hacker@klever.net>2008-01-01 14:08:05 (UTC)
committer Michael Krelin <hacker@klever.net>2008-01-04 18:23:51 (UTC)
commit15d089da9f7682bc3524b6a278cfcd64621e7db2 (patch) (unidiff)
tree065c437d9de7d9fe33e60cd825d2e2475f7e9f8b
parent9e46475efea0f61bc588221d21d0d749c4eb7ab1 (diff)
downloadlibopkele-15d089da9f7682bc3524b6a278cfcd64621e7db2.zip
libopkele-15d089da9f7682bc3524b6a278cfcd64621e7db2.tar.gz
libopkele-15d089da9f7682bc3524b6a278cfcd64621e7db2.tar.bz2
configurable -DNDEBUG
Signed-off-by: Michael Krelin <hacker@klever.net>
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--configure.ac12
-rw-r--r--lib/Makefile.am1
-rw-r--r--test/Makefile.am1
3 files changed, 14 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 9ad9710..51bacd5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,186 +1,198 @@
1AC_INIT([libopkele], [0.4], [libopkele-bugs@klever.net]) 1AC_INIT([libopkele], [0.4], [libopkele-bugs@klever.net])
2AC_CONFIG_SRCDIR([include/opkele/opkele-config.h]) 2AC_CONFIG_SRCDIR([include/opkele/opkele-config.h])
3AC_CONFIG_HEADERS([config.h include/opkele/acconfig.h]) 3AC_CONFIG_HEADERS([config.h include/opkele/acconfig.h])
4AM_INIT_AUTOMAKE([dist-bzip2]) 4AM_INIT_AUTOMAKE([dist-bzip2])
5 5
6AC_PROG_INSTALL 6AC_PROG_INSTALL
7AC_PROG_CXX 7AC_PROG_CXX
8AC_PROG_CC 8AC_PROG_CC
9AC_PROG_LIBTOOL 9AC_PROG_LIBTOOL
10PKG_PROG_PKG_CONFIG 10PKG_PROG_PKG_CONFIG
11 11
12AC_HEADER_STDC 12AC_HEADER_STDC
13 13
14AC_PATH_PROG([XSLTPROC],[xsltproc],[true]) 14AC_PATH_PROG([XSLTPROC],[xsltproc],[true])
15 15
16AC_MSG_CHECKING([for source tree version]) 16AC_MSG_CHECKING([for source tree version])
17if headrev=$(cd $srcdir && git rev-parse --verify HEAD 2>/dev/null) ; then 17if headrev=$(cd $srcdir && git rev-parse --verify HEAD 2>/dev/null) ; then
18 PACKAGE_SRC_VERSION="$(cd $srcdir && git describe --tags $headrev)" 18 PACKAGE_SRC_VERSION="$(cd $srcdir && git describe --tags $headrev)"
19 test "$PACKAGE_SRC_VERSION" = "$PACKAGE_VERSION" \ 19 test "$PACKAGE_SRC_VERSION" = "$PACKAGE_VERSION" \
20 -o "${PACKAGE_SRC_VERSION#${PACKAGE_VERSION}-}" != "$PACKAGE_SRC_VERSION" || PACKAGE_SRC_VERSION="${PACKAGE_VERSION}:${PACKAGE_SRC_VERSION}" 20 -o "${PACKAGE_SRC_VERSION#${PACKAGE_VERSION}-}" != "$PACKAGE_SRC_VERSION" || PACKAGE_SRC_VERSION="${PACKAGE_VERSION}:${PACKAGE_SRC_VERSION}"
21 ( cd $srcdir && git diff-index $headrev | read dirt ) && PACKAGE_SRC_VERSION="${PACKAGE_SRC_VERSION}-dirty" 21 ( cd $srcdir && git diff-index $headrev | read dirt ) && PACKAGE_SRC_VERSION="${PACKAGE_SRC_VERSION}-dirty"
22else 22else
23 PACKAGE_SRC_VERSION="$PACKAGE_VERSION" 23 PACKAGE_SRC_VERSION="$PACKAGE_VERSION"
24fi 24fi
25AC_MSG_RESULT([$PACKAGE_SRC_VERSION]) 25AC_MSG_RESULT([$PACKAGE_SRC_VERSION])
26AC_SUBST([PACKAGE_SRC_VERSION]) 26AC_SUBST([PACKAGE_SRC_VERSION])
27AC_DEFINE_UNQUOTED([PACKAGE_SRC_VERSION],["$PACKAGE_SRC_VERSION"],[more or less precise source tree version]) 27AC_DEFINE_UNQUOTED([PACKAGE_SRC_VERSION],["$PACKAGE_SRC_VERSION"],[more or less precise source tree version])
28 28
29tr1_mem_std="false" 29tr1_mem_std="false"
30tr1_mem_boost="false" 30tr1_mem_boost="false"
31AC_CHECK_SHAREDPTR(std::tr1,tr1/memory,[ tr1_mem_std=true ]) 31AC_CHECK_SHAREDPTR(std::tr1,tr1/memory,[ tr1_mem_std=true ])
32AC_CHECK_SHAREDPTR(boost,boost/shared_ptr.hpp,[ tr1_mem_boost=true ]) 32AC_CHECK_SHAREDPTR(boost,boost/shared_ptr.hpp,[ tr1_mem_boost=true ])
33tr1_mem="" 33tr1_mem=""
34AC_ARG_WITH([tr1-memory], 34AC_ARG_WITH([tr1-memory],
35 AC_HELP_STRING([--with-tr1-memory=<boost|std>],[select tr1/memory (shared_ptr<>) implementation to use]), 35 AC_HELP_STRING([--with-tr1-memory=<boost|std>],[select tr1/memory (shared_ptr<>) implementation to use]),
36 [ tr1_mem="$withval" ] 36 [ tr1_mem="$withval" ]
37) 37)
38AC_MSG_CHECKING([for tr1/memory implementation to use]) 38AC_MSG_CHECKING([for tr1/memory implementation to use])
39test -z "$tr1_mem" && $tr1_mem_std && tr1_mem=std 39test -z "$tr1_mem" && $tr1_mem_std && tr1_mem=std
40test -z "$tr1_mem" && $tr1_mem_boost && tr1_mem=boost 40test -z "$tr1_mem" && $tr1_mem_boost && tr1_mem=boost
41if test -z "$tr1_mem" ; then 41if test -z "$tr1_mem" ; then
42 AC_MSG_RESULT([none found]) 42 AC_MSG_RESULT([none found])
43else 43else
44 AC_MSG_RESULT([$tr1_mem]) 44 AC_MSG_RESULT([$tr1_mem])
45fi 45fi
46case "$tr1_mem" in 46case "$tr1_mem" in
47 std) 47 std)
48 $tr1_mem_std || AC_MSG_ERROR([std implementation requested, but not found]) 48 $tr1_mem_std || AC_MSG_ERROR([std implementation requested, but not found])
49 OPKELE_TR1_MEM_NS=std::tr1 49 OPKELE_TR1_MEM_NS=std::tr1
50 OPKELE_TR1_MEM_HEADER=tr1/memory 50 OPKELE_TR1_MEM_HEADER=tr1/memory
51 ;; 51 ;;
52 boost) 52 boost)
53 $tr1_mem_boost || AC_MSG_ERROR([boost implementation requested, but not found]) 53 $tr1_mem_boost || AC_MSG_ERROR([boost implementation requested, but not found])
54 OPKELE_TR1_MEM_NS=boost 54 OPKELE_TR1_MEM_NS=boost
55 OPKELE_TR1_MEM_HEADER=boost/shared_ptr.hpp 55 OPKELE_TR1_MEM_HEADER=boost/shared_ptr.hpp
56 ;; 56 ;;
57 *) 57 *)
58 AC_MSG_ERROR([no shared_ptr<> implementation found]) 58 AC_MSG_ERROR([no shared_ptr<> implementation found])
59 ;; 59 ;;
60esac 60esac
61AC_SUBST([OPKELE_TR1_MEM_NS]) 61AC_SUBST([OPKELE_TR1_MEM_NS])
62AC_SUBST([OPKELE_TR1_MEM_HEADER]) 62AC_SUBST([OPKELE_TR1_MEM_HEADER])
63 63
64PKG_CHECK_MODULES([OPENSSL],[openssl],,[ 64PKG_CHECK_MODULES([OPENSSL],[openssl],,[
65 AC_MSG_ERROR([no openssl library found. get one from http://www.openssl.org/]) 65 AC_MSG_ERROR([no openssl library found. get one from http://www.openssl.org/])
66]) 66])
67 67
68WANT_KONFORKA="yes" 68WANT_KONFORKA="yes"
69AC_ARG_ENABLE([konforka], 69AC_ARG_ENABLE([konforka],
70 AC_HELP_STRING([--disable-konforka],[do not use konforka library (default: use if found)]), 70 AC_HELP_STRING([--disable-konforka],[do not use konforka library (default: use if found)]),
71 [ 71 [
72 test "${enableval}" = "no" && WANT_KONFORKA="no" 72 test "${enableval}" = "no" && WANT_KONFORKA="no"
73 ] 73 ]
74) 74)
75if test "${WANT_KONFORKA}" = "yes" ; then 75if test "${WANT_KONFORKA}" = "yes" ; then
76 PKG_CHECK_MODULES([KONFORKA],[konforka],[ 76 PKG_CHECK_MODULES([KONFORKA],[konforka],[
77 AC_SUBST([KONFORKA_CFLAGS]) 77 AC_SUBST([KONFORKA_CFLAGS])
78 AC_SUBST([KONFORKA_LIBS]) 78 AC_SUBST([KONFORKA_LIBS])
79 AC_DEFINE([HAVE_KONFORKA],,[defined in presence of konforka library]) 79 AC_DEFINE([HAVE_KONFORKA],,[defined in presence of konforka library])
80 AC_DEFINE([OPKELE_HAVE_KONFORKA],,[defined in presence of konforka library]) 80 AC_DEFINE([OPKELE_HAVE_KONFORKA],,[defined in presence of konforka library])
81 AC_SUBST([KONFORKA_KONFORKA],[konforka]) 81 AC_SUBST([KONFORKA_KONFORKA],[konforka])
82 ],[true]) 82 ],[true])
83fi 83fi
84 84
85WANT_DOXYGEN="yes" 85WANT_DOXYGEN="yes"
86AC_ARG_ENABLE([doxygen], 86AC_ARG_ENABLE([doxygen],
87 AC_HELP_STRING([--disable-doxygen],[do not generate documentation]), 87 AC_HELP_STRING([--disable-doxygen],[do not generate documentation]),
88 [ 88 [
89 test "${enableval}" = "no" && WANT_DOXYGEN="no" 89 test "${enableval}" = "no" && WANT_DOXYGEN="no"
90 ] 90 ]
91) 91)
92if test "${WANT_DOXYGEN}" = "yes" ; then 92if test "${WANT_DOXYGEN}" = "yes" ; then
93 AC_WITH_DOXYGEN 93 AC_WITH_DOXYGEN
94 AC_WITH_DOT 94 AC_WITH_DOT
95else 95else
96 AM_CONDITIONAL([HAVE_DOXYGEN],[false]) 96 AM_CONDITIONAL([HAVE_DOXYGEN],[false])
97 AM_CONDITIONAL([HAVE_DOT],[false]) 97 AM_CONDITIONAL([HAVE_DOT],[false])
98fi 98fi
99 99
100LIBCURL_CHECK_CONFIG(,,,[ 100LIBCURL_CHECK_CONFIG(,,,[
101 AC_MSG_ERROR([no required libcurl library. get one from http://curl.haxx.se/]) 101 AC_MSG_ERROR([no required libcurl library. get one from http://curl.haxx.se/])
102]) 102])
103 103
104AC_CHECK_HEADER([expat.h],[ 104AC_CHECK_HEADER([expat.h],[
105 AC_CHECK_LIB([expat],[XML_ParserCreate],[ 105 AC_CHECK_LIB([expat],[XML_ParserCreate],[
106 EXPAT_LIBS=-lexpat 106 EXPAT_LIBS=-lexpat
107 EXPAT_CFLAGS= 107 EXPAT_CFLAGS=
108 AC_SUBST([EXPAT_LIBS]) 108 AC_SUBST([EXPAT_LIBS])
109 AC_SUBST([EXPAT_CFLAGS]) 109 AC_SUBST([EXPAT_CFLAGS])
110 ],[ 110 ],[
111 AC_MSG_ERROR([no required expat library. get one from http://expat.sourceforge.net/]) 111 AC_MSG_ERROR([no required expat library. get one from http://expat.sourceforge.net/])
112 ]) 112 ])
113],[ 113],[
114 AC_MSG_ERROR([no required expat library. get one from http://expat.sourceforge.net/]) 114 AC_MSG_ERROR([no required expat library. get one from http://expat.sourceforge.net/])
115]) 115])
116 116
117if test -n "$PCRE_LIBS" -a -n "$PCRE_CFLAGS" ; then 117if test -n "$PCRE_LIBS" -a -n "$PCRE_CFLAGS" ; then
118 AC_SUBST([PCRE_CFLAGS]) 118 AC_SUBST([PCRE_CFLAGS])
119 AC_SUBST([PCRE_LIBS]) 119 AC_SUBST([PCRE_LIBS])
120 : 120 :
121else 121else
122 PKG_CHECK_MODULES([PCRE],[libpcre],,[ 122 PKG_CHECK_MODULES([PCRE],[libpcre],,[
123 AC_MSG_ERROR([no libpcre found, go get it at http://www.pcre.org/]) 123 AC_MSG_ERROR([no libpcre found, go get it at http://www.pcre.org/])
124 ]) 124 ])
125fi 125fi
126 126
127curl_ssl_verify_host="true" 127curl_ssl_verify_host="true"
128AC_ARG_ENABLE([ssl-verify-host], 128AC_ARG_ENABLE([ssl-verify-host],
129 AC_HELP_STRING([--disable-ssl-verify-host],[disable cURL cert/host relationships verification]), 129 AC_HELP_STRING([--disable-ssl-verify-host],[disable cURL cert/host relationships verification]),
130 [ test "${enableval}" = "no" && curl_ssl_verify_host="false" ] 130 [ test "${enableval}" = "no" && curl_ssl_verify_host="false" ]
131) 131)
132${curl_ssl_verify_host} || AC_DEFINE([DISABLE_CURL_SSL_VERIFYHOST],,[defined if cURL is not to verify cert/host]) 132${curl_ssl_verify_host} || AC_DEFINE([DISABLE_CURL_SSL_VERIFYHOST],,[defined if cURL is not to verify cert/host])
133 133
134curl_ssl_verify_peer="true" 134curl_ssl_verify_peer="true"
135AC_ARG_ENABLE([ssl-verify-peer], 135AC_ARG_ENABLE([ssl-verify-peer],
136 AC_HELP_STRING([--disable-ssl-verify-peer],[disable cURL cert validity verification]), 136 AC_HELP_STRING([--disable-ssl-verify-peer],[disable cURL cert validity verification]),
137 [ test "${enableval}" = "no" && curl_ssl_verify_peer="false" ] 137 [ test "${enableval}" = "no" && curl_ssl_verify_peer="false" ]
138) 138)
139${curl_ssl_verify_peer} || AC_DEFINE([DISABLE_CURL_SSL_VERIFYPEER],,[defined if cURL is not to verify cert validity]) 139${curl_ssl_verify_peer} || AC_DEFINE([DISABLE_CURL_SSL_VERIFYPEER],,[defined if cURL is not to verify cert validity])
140 140
141postels_law=true 141postels_law=true
142AC_ARG_ENABLE([postels-law], 142AC_ARG_ENABLE([postels-law],
143 AC_HELP_STRING([--disable-postels-law],[Be strict, do not adhere to Postel's Law ("be conservative in what you do, be liberal in what you accept from others", RFC 793)]), 143 AC_HELP_STRING([--disable-postels-law],[Be strict, do not adhere to Postel's Law ("be conservative in what you do, be liberal in what you accept from others", RFC 793)]),
144 [ test "${enableval}" = "no" && postels_law=false ] 144 [ test "${enableval}" = "no" && postels_law=false ]
145) 145)
146$postels_law && AC_DEFINE([POSTELS_LAW],,[defined if we want to adhere to Postel's Law]) 146$postels_law && AC_DEFINE([POSTELS_LAW],,[defined if we want to adhere to Postel's Law])
147 147
148AC_DEFINE_UNQUOTED([OPKELE_SRC_DIR],["$PWD"],[source directory]) 148AC_DEFINE_UNQUOTED([OPKELE_SRC_DIR],["$PWD"],[source directory])
149 149
150nitpick=false 150nitpick=false
151AC_ARG_ENABLE([nitpicking], 151AC_ARG_ENABLE([nitpicking],
152 AC_HELP_STRING([--enable-nitpicking],[make compiler somewhat overly fastidious about the code it deals with]), 152 AC_HELP_STRING([--enable-nitpicking],[make compiler somewhat overly fastidious about the code it deals with]),
153 [ test "$enableval" = "no" || nitpick=true ] 153 [ test "$enableval" = "no" || nitpick=true ]
154) 154)
155if $nitpick ; then 155if $nitpick ; then
156 CPP_NITPICK="-pedantic -Wall -Wextra -Wundef -Wshadow \ 156 CPP_NITPICK="-pedantic -Wall -Wextra -Wundef -Wshadow \
157 -Wunsafe-loop-optimizations -Wconversion -Wmissing-format-attribute \ 157 -Wunsafe-loop-optimizations -Wconversion -Wmissing-format-attribute \
158 -Wredundant-decls -ansi" 158 -Wredundant-decls -ansi"
159 # -Wlogical-op -Wmissing-noreturn 159 # -Wlogical-op -Wmissing-noreturn
160 C_NITPICK="$CPP_NITPICK" 160 C_NITPICK="$CPP_NITPICK"
161 CXX_NITPICK="$C_NITPICK" 161 CXX_NITPICK="$C_NITPICK"
162 162
163 CPPFLAGS="$CPPFLAGS $CPP_NITPICK" 163 CPPFLAGS="$CPPFLAGS $CPP_NITPICK"
164 CFLAGS="$CFLAGS $C_NITPICK" 164 CFLAGS="$CFLAGS $C_NITPICK"
165 CXXFLAGS="$CXXFLAGS $CXX_NITPICK" 165 CXXFLAGS="$CXXFLAGS $CXX_NITPICK"
166fi 166fi
167 167
168ndebug=true
169AC_ARG_ENABLE([debug],
170 AC_HELP_STRING([--enable-debug],[enable debugging code]),
171 [ test "$enableval" = "no" || ndebug=false ]
172)
173if $ndebug ; then
174 CPPFLAGS_DEBUG="-DNDEBUG"
175else
176 CPPFLAGS_DEBUG=""
177fi
178AC_SUBST([CPPFLAGS_DEBUG])
179
168xri_proxy_url="http://beta.xri.net/" 180xri_proxy_url="http://beta.xri.net/"
169AC_MSG_CHECKING([for XRI resolver proxy]) 181AC_MSG_CHECKING([for XRI resolver proxy])
170AC_ARG_ENABLE([xri-proxy], 182AC_ARG_ENABLE([xri-proxy],
171 AC_HELP_STRING([--with-xri-proxy=url],[set xri proxy for use when resolving xri identities, default is http://xr_proxy_url]), 183 AC_HELP_STRING([--with-xri-proxy=url],[set xri proxy for use when resolving xri identities, default is http://xr_proxy_url]),
172 [ xri_proxy_url="$withval" ] 184 [ xri_proxy_url="$withval" ]
173) 185)
174AC_MSG_RESULT([$xri_proxy_url]) 186AC_MSG_RESULT([$xri_proxy_url])
175AC_DEFINE_UNQUOTED([XRI_PROXY_URL],["$xri_proxy_url"],[XRI proxy resolver URL]) 187AC_DEFINE_UNQUOTED([XRI_PROXY_URL],["$xri_proxy_url"],[XRI proxy resolver URL])
176 188
177AC_CONFIG_FILES([ 189AC_CONFIG_FILES([
178 Makefile 190 Makefile
179 libopkele.pc 191 libopkele.pc
180 Doxyfile 192 Doxyfile
181 include/Makefile 193 include/Makefile
182 include/opkele/tr1-mem.h 194 include/opkele/tr1-mem.h
183 lib/Makefile 195 lib/Makefile
184 test/Makefile 196 test/Makefile
185]) 197])
186AC_OUTPUT 198AC_OUTPUT
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 185411f..9c73e96 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -1,30 +1,31 @@
1lib_LTLIBRARIES = libopkele.la 1lib_LTLIBRARIES = libopkele.la
2 2
3AM_CPPFLAGS = ${CPPFLAGS_DEBUG}
3DEFAULT_INCLUDES = -I${top_builddir} 4DEFAULT_INCLUDES = -I${top_builddir}
4INCLUDES = \ 5INCLUDES = \
5 -I${top_srcdir}/include/ \ 6 -I${top_srcdir}/include/ \
6 ${KONFORKA_CFLAGS} \ 7 ${KONFORKA_CFLAGS} \
7 ${OPENSSL_CFLAGS} \ 8 ${OPENSSL_CFLAGS} \
8 ${LIBCURL_CPPFLAGS} \ 9 ${LIBCURL_CPPFLAGS} \
9 ${PCRE_CFLAGS} ${EXPAT_CFLAGS} 10 ${PCRE_CFLAGS} ${EXPAT_CFLAGS}
10libopkele_la_LIBADD = \ 11libopkele_la_LIBADD = \
11 ${LIBCURL} \ 12 ${LIBCURL} \
12 ${PCRE_LIBS} ${EXPAT_LIBS} \ 13 ${PCRE_LIBS} ${EXPAT_LIBS} \
13 ${OPENSSL_LIBS} \ 14 ${OPENSSL_LIBS} \
14 ${KONFORKA_LIBS} 15 ${KONFORKA_LIBS}
15 16
16libopkele_la_SOURCES = \ 17libopkele_la_SOURCES = \
17 params.cc \ 18 params.cc \
18 util.cc \ 19 util.cc \
19 server.cc \ 20 server.cc \
20 secret.cc \ 21 secret.cc \
21 data.cc \ 22 data.cc \
22 consumer.cc \ 23 consumer.cc \
23 exception.cc \ 24 exception.cc \
24 extension.cc \ 25 extension.cc \
25 sreg.cc \ 26 sreg.cc \
26 extension_chain.cc \ 27 extension_chain.cc \
27 curl.cc expat.cc \ 28 curl.cc expat.cc \
28 discovery.cc 29 discovery.cc
29libopkele_la_LDFLAGS = \ 30libopkele_la_LDFLAGS = \
30 -version-info 2:0:0 31 -version-info 2:0:0
diff --git a/test/Makefile.am b/test/Makefile.am
index 13c4cd2..bacaafa 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,15 +1,16 @@
1noinst_PROGRAMS = test idiscover 1noinst_PROGRAMS = test idiscover
2 2
3AM_CPPFLAGS=${CPPFLAGS_DEBUG}
3DEFAULT_INCLUDES = -I${top_builddir} 4DEFAULT_INCLUDES = -I${top_builddir}
4INCLUDES = -I${top_srcdir}/include/ ${KONFORKA_CFLAGS} 5INCLUDES = -I${top_srcdir}/include/ ${KONFORKA_CFLAGS}
5 6
6test_SOURCES = test.cc 7test_SOURCES = test.cc
7test_LDADD = ${top_builddir}/lib/libopkele.la 8test_LDADD = ${top_builddir}/lib/libopkele.la
8 9
9EXTRA_DIST=$(addsuffix .html,$(addprefix html/, \ 10EXTRA_DIST=$(addsuffix .html,$(addprefix html/, \
10 empty head-in-body hkn-delegate hkn-server hkn in-body \ 11 empty head-in-body hkn-delegate hkn-server hkn in-body \
11 unclosed-head spaced-links spaced-link-attrs 2rels \ 12 unclosed-head spaced-links spaced-link-attrs 2rels \
12 )) 13 ))
13 14
14idiscover_SOURCES = idiscover.cc 15idiscover_SOURCES = idiscover.cc
15idiscover_LDADD = ${top_builddir}/lib/libopkele.la 16idiscover_LDADD = ${top_builddir}/lib/libopkele.la