Merge lp:~mordred/libcpuinfo/add-perl-support into lp:libcpuinfo

Proposed by Monty Taylor
Status: Needs review
Proposed branch: lp:~mordred/libcpuinfo/add-perl-support
Merge into: lp:libcpuinfo
Diff against target: None lines
To merge this branch: bzr merge lp:~mordred/libcpuinfo/add-perl-support
Reviewer Review Type Date Requested Status
libcpuinfo developers Pending
Review via email: mp+11395@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Monty Taylor (mordred) wrote :

Adds Perl, Lua and Python3 support. (ignore the branch name. these are not the droids you are looking for)

Unmerged revisions

13. By Monty Taylor

Added python3 swig support macro call.

12. By Monty Taylor

Added Lua support.

11. By Monty Taylor

Added python3 support

10. By Monty Taylor

Added support for Perl.
Use installed version of pandora-build and don't copy the files in.
Rearranged a few things.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== renamed file 'AUTHORS.txt' => 'AUTHORS'
2--- AUTHORS.txt 2009-06-14 10:25:20 +0000
3+++ AUTHORS 2009-08-23 00:03:39 +0000
4@@ -3,3 +3,5 @@
5
6 Robert Collins, 2009
7 Matthew Fuller, 2009
8+Monty Taylor, 2009
9+Stewart Smith, 2009
10
11=== added file 'ChangeLog'
12=== modified file 'Makefile.am'
13--- Makefile.am 2009-07-14 07:51:56 +0000
14+++ Makefile.am 2009-08-23 22:30:03 +0000
15@@ -5,9 +5,10 @@
16 # licence. Please see COPYING.txt distributed with the source code for
17 # details.
18
19-ACLOCAL_AMFLAGS = -I acinclude -I m4
20+ACLOCAL_AMFLAGS = -I acinclude
21 BUILT_SOURCES=
22 CLEANFILES=
23+DISTCLEANFILES=
24 EXTRA_DIST = libcpuinfo.pc.in AUTHORS.txt COPYING.txt INSTALL.txt interface/cpuinfo.i
25
26 ## install libcpuinfo.pc
27@@ -38,41 +39,120 @@
28 pyexec_LTLIBRARIES=
29 python_PYTHON=
30 if BUILD_PYTHON
31- BUILT_SOURCES += cpuinfo_python.c cpuinfo.py
32- EXTRA_DIST += cpuinfo_python.c cpuinfo.py
33- CLEANFILES += cpuinfo_python.c cpuinfo.py
34- pyexec_LTLIBRARIES += pycpuinfo.la
35- python_PYTHON += cpuinfo.py
36-
37- pycpuinfo_la_CPPFLAGS= ${AM_CPPFLAGS} ${PYTHON_CPPFLAGS}
38- pycpuinfo_la_CFLAGS=
39- pycpuinfo_la_SOURCES= cpuinfo_python.c
40- pycpuinfo_la_LDFLAGS = -avoid-version -module ${PYTHON_LDFLAGS}
41- pycpuinfo_la_LIBADD= libcpuinfo.la
42-endif
43-
44-cpuinfo.py: cpuinfo_python.c
45-
46-cpuinfo_python.c: interface/cpuinfo.i
47- ${SWIG} -python -O -interface pycpuinfo -o $@ $<
48-
49+ BUILT_SOURCES += python/_cpuinfo.c python/cpuinfo.py python/_cpuinfo.so
50+ EXTRA_DIST += python/_cpuinfo.c python/cpuinfo.py
51+ DISTCLEANFILES += python/_cpuinfo.c python/cpuinfo.py
52+ pyexec_LTLIBRARIES += python/_cpuinfo.la
53+ python_PYTHON += python/cpuinfo.py
54+
55+ python__cpuinfo_la_CPPFLAGS= ${AM_CPPFLAGS} ${PYTHON_CPPFLAGS}
56+ python__cpuinfo_la_CFLAGS=
57+ python__cpuinfo_la_SOURCES= python/_cpuinfo.c
58+ python__cpuinfo_la_LDFLAGS = -avoid-version -module -disable-static ${PYTHON_LDFLAGS}
59+ python__cpuinfo_la_LIBADD= libcpuinfo.la
60+endif
61+
62+python/_cpuinfo.so:
63+ @rm -f python/_cpuinfo.so
64+ @ln -s .libs/_cpuinfo.so python/_cpuinfo.so
65+
66+python/cpuinfo.py: python/_cpuinfo.c
67+
68+python/_cpuinfo.c: interface/cpuinfo.i
69+ ${SWIG} -python -O -outdir python -interface _cpuinfo -o $@ $<
70+
71+python3dir= ${PYTHON3_SITE_PKG}
72+python3_LTLIBRARIES=
73+python3_DATA=
74+if BUILD_PYTHON3
75+ BUILT_SOURCES += python3/_cpuinfo.c python3/cpuinfo.py python3/_cpuinfo.so
76+ EXTRA_DIST += python3/_cpuinfo.c python3/cpuinfo.py
77+ DISTCLEANFILES += python3/_cpuinfo.c python3/cpuinfo.py
78+ python3_LTLIBRARIES += python3/_cpuinfo.la
79+ python3_DATA += python3/cpuinfo.py
80+
81+ python3__cpuinfo_la_CPPFLAGS= ${AM_CPPFLAGS} ${PYTHON3_CPPFLAGS}
82+ python3__cpuinfo_la_CFLAGS=
83+ python3__cpuinfo_la_SOURCES= python3/_cpuinfo.c
84+ python3__cpuinfo_la_LDFLAGS = -avoid-version -module -disable-static ${PYTHON3_LDFLAGS}
85+ python3__cpuinfo_la_LIBADD= libcpuinfo.la
86+endif
87+
88+python3/_cpuinfo.so:
89+ @rm -f python3/_cpuinfo.so
90+ @ln -s .libs/_cpuinfo.so python3/_cpuinfo.so
91+
92+python3/cpuinfo.py: python3/_cpuinfo.c
93+
94+python3/_cpuinfo.c: interface/cpuinfo.i
95+ ${SWIG} -python -py3 -O -outdir python3 -interface _cpuinfo -o $@ $<
96+
97+luaarchdir=${LUA_ARCHDIR}
98+luaarch_LTLIBRARIES=
99+if BUILD_LUA
100+ BUILT_SOURCES+= lua/cpuinfo.c lua/cpuinfo.so
101+ EXTRA_DIST+= lua/cpuinfo.c
102+ DISTCLEANFILES+= lua/cpuinfo.c
103+ luaarch_LTLIBRARIES+= lua/cpuinfo.la
104+
105+ lua_cpuinfo_la_SOURCES= lua/cpuinfo.c
106+ lua_cpuinfo_la_CFLAGS= ${LUA_CFLAGS}
107+ lua_cpuinfo_la_LDFLAGS= -module -avoid-version -disable-static ${LUA_LDFLAGS}
108+ lua_cpuinfo_la_LIBADD= libcpuinfo.la
109+endif
110+
111+lua/cpuinfo.so:
112+ @rm -f lua/cpuinfo.so
113+ @ln -s .libs/cpuinfo.so lua/cpuinfo.so
114+
115+lua/cpuinfo.c: interface/cpuinfo.i
116+ $(SWIG) -lua -o $@ $<
117+
118+perldir= ${PERL_ARCHDIR}/auto
119+perlpmdir= ${PERL_ARCHDIR}
120+perl_LTLIBRARIES=
121+if BUILD_PERL
122+ BUILT_SOURCES += perl/cpuinfo.c perl/cpuinfo.pm perl/cpuinfo.so
123+ EXTRA_DIST += perl/cpuinfo.c perl/cpuinfo.pm
124+ DISTCLEANFILES += perl/cpuinfo.c perl/cpuinfo.pm
125+ perl_LTLIBRARIES += perl/cpuinfo.la
126+ perlpm_DATA = perl/cpuinfo.pm
127+
128+ perl_cpuinfo_la_CPPFLAGS= ${AM_CPPFLAGS} ${PERL_CPPFLAGS}
129+ perl_cpuinfo_la_CFLAGS=
130+ perl_cpuinfo_la_SOURCES= perl/cpuinfo.c
131+ perl_cpuinfo_la_LDFLAGS= -avoid-version -module -disable-static
132+ perl_cpuinfo_la_LIBADD= libcpuinfo.la
133+endif
134+
135+# we need to symlink in to the libtool dir for local testing.
136+perl/cpuinfo.so:
137+ @rm -f perl/cpuinfo.so
138+ @ln -s .libs/cpuinfo.so perl/cpuinfo.so
139+
140+perl/cpuinfo.c: interface/cpuinfo.i
141+ ${SWIG} -perl -o $@ $<
142
143 rubydir= ${RUBY_DIR}
144 ruby_LTLIBRARIES=
145 if BUILD_RUBY
146- BUILT_SOURCES += cpuinfo_ruby.c
147- EXTRA_DIST += cpuinfo_ruby.c
148- CLEANFILES += cpuinfo_ruby.c
149- ruby_LTLIBRARIES += rubycpuinfo.la
150+ BUILT_SOURCES += ruby/cpuinfo.c ruby/cpuinfo.so
151+ EXTRA_DIST += ruby/cpuinfo.c
152+ DISTCLEANFILES += ruby/cpuinfo.c
153+ ruby_LTLIBRARIES += ruby/cpuinfo.la
154
155- rubycpuinfo_la_CPPFLAGS= ${AM_CPPFLAGS} ${RUBY_INCLUDES}
156- rubycpuinfo_la_CFLAGS=
157- rubycpuinfo_la_SOURCES= cpuinfo_ruby.c
158- rubycpuinfo_la_LDFLAGS = -avoid-version -module ${RUBY_LDFLAGS}
159- rubycpuinfo_la_LIBADD= libcpuinfo.la
160+ ruby_cpuinfo_la_CPPFLAGS= ${AM_CPPFLAGS} ${RUBY_INCLUDES}
161+ ruby_cpuinfo_la_CFLAGS=
162+ ruby_cpuinfo_la_SOURCES= ruby/cpuinfo.c
163+ ruby_cpuinfo_la_LDFLAGS = -avoid-version -module ${RUBY_LDFLAGS}
164+ ruby_cpuinfo_la_LIBADD= libcpuinfo.la
165
166 endif
167
168-cpuinfo_ruby.c: interface/cpuinfo.i
169- ${SWIG} -ruby -o $@ $<
170+ruby/cpuinfo.so:
171+ @rm -f ruby/cpuinfo.so
172+ @ln -s .libs/cpuinfo.so ruby/cpuinfo.so
173+
174+ruby/cpuinfo.c: interface/cpuinfo.i
175+ ${SWIG} -ruby -autorename -o $@ $<
176
177
178=== modified file 'README'
179--- README 2009-07-14 07:53:26 +0000
180+++ README 2009-08-23 00:03:39 +0000
181@@ -16,10 +16,16 @@
182
183 Various language bindings bring in their own more complex dependencies.
184
185-When building from bzr libtool, autoconf, automake, swig and some macros from
186-autoconf-archive are needed. These are not needed when building from a release
187-(a tar or zip file). The relevant development packages for any languages you
188-want to support are also a build-time dependency.
189+To build libcpuinfo from bzr, libtool, autoconf, automake are needed.
190+Additionally, pandora-build and some macros from autoconf-archive are used.
191+pandora-build can be found at http://launchpad.net/pandora-build.
192+autoconf-archive can be found either at http://www.nongnu.org/autoconf-archive/
193+or in OS packages such as the Ubuntu/Debian package autoconf-archive.
194+
195+These are not needed when building from a release (a tar or zip file).
196+
197+The relevant development packages for any languages you want to support are
198+also a build-time dependency.
199
200 Design Goals
201 ************
202
203=== modified file 'configure.ac'
204--- configure.ac 2009-07-14 07:30:23 +0000
205+++ configure.ac 2009-08-24 15:41:57 +0000
206@@ -15,38 +15,14 @@
207 AC_INIT([libcpuinfo], [CPUINFO_VERSION], [libcpuinfo-dev@lists.launchpad.net])
208 AC_CONFIG_SRCDIR([cpuinfo/cpuinfo.h])
209 AC_CONFIG_AUX_DIR([autotools])
210-
211-# We need to prevent canonical target
212-# from injecting -O2 into CFLAGS - but we won't modify anything if we have
213-# set CFLAGS on the command line, since that should take ultimate precedence
214-AS_IF([test "x${ac_cv_env_CFLAGS_set}" = "x"],
215- [CFLAGS=""])
216-AS_IF([test "x${ac_cv_env_CXXFLAGS_set}" = "x"],
217- [CXXFLAGS=""])
218-
219-AC_CANONICAL_TARGET
220-AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
221 AC_CONFIG_MACRO_DIR([acinclude])
222
223+PANDORA_CANONICAL_TARGET(ignore-shared-ptr warnings-always-on)
224+
225 AC_DEFINE([CPUINFO_MAJOR_VERSION],LIBCPUINFO_MAJOR_VERSION,[Major version])
226 AC_DEFINE([CPUINFO_MINOR_VERSION],LIBCPUINFO_MINOR_VERSION,[Minor version])
227 AC_DEFINE([CPUINFO_MICRO_VERSION],LIBCPUINFO_MICRO_VERSION,[Micro version])
228
229-
230-AC_PROG_CC_C99
231-AM_PROG_CC_C_O
232-
233-AC_USE_SYSTEM_EXTENSIONS
234-
235-# We use libtool
236-LT_INIT
237-LT_LANG(C)
238-LT_LANG(C++)
239-
240-
241-AC_PROG_INSTALL
242-AC_PROG_LN_S
243-
244 # Checks for libraries.
245
246 # Checks for header files.
247@@ -54,10 +30,7 @@
248 AC_CHECK_HEADERS([sys/sysctl.h])
249
250 # Checks for typedefs, structures, and compiler characteristics.
251-AC_C_CONST
252 AC_TYPE_PID_T
253-AC_TYPE_SIZE_T
254-AC_HEADER_TIME
255 AC_STRUCT_TM
256
257 AC_CHECK_SIZEOF(int, 4)
258@@ -65,80 +38,17 @@
259 AC_CHECK_SIZEOF(long, 4)
260
261 # Checks for library functions.
262-AC_FUNC_MALLOC
263-AC_FUNC_REALLOC
264 AC_CHECK_FUNCS(sysctlbyname)
265
266-
267-AC_DEFINE([SWIG_TYPE_TABLE],[cpuinfo],[Type Table name for SWIG symbol table])
268-
269-AC_PROG_SWIG(1.3.31)
270-AC_SUBST(SWIG)
271-
272-WITH_PYTHON
273-WITH_RUBY
274-
275-SWIG="${SWIG} -I\${top_srcdir} -I\${top_builddir}"
276-
277-
278-dnl We need to inject error into the cflags to test if visibility works or not
279-save_CFLAGS="${CFLAGS}"
280-CFLAGS="${CFLAGS} -Werror"
281-gl_VISIBILITY
282-CFLAGS="${save_CFLAGS}"
283-
284-AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
285-
286-
287-AS_IF([test "$GCC" = "yes"],[
288-
289- AM_CPPFLAGS="-ggdb3 ${AM_CPPFLAGS}"
290-
291- DEBUG_CFLAGS="-O0"
292- DEBUG_CXXFLAGS="-O0"
293-
294- OPTIMIZE_CFLAGS="-O3"
295- OPTIMIZE_CXXFLAGS="-O3"
296-])
297-AS_IF([test "$SUNCC" = "yes"],[
298- AM_CFLAGS="-g -mt -xstrconst -Xa ${AM_CFLAGS}"
299- AM_CXXFLAGS="-mt -compat=5 -library=stlport4 -template=no%extdef ${AM_CXXFLAGS}"
300-
301- DEBUG_CXXFLAGS="-g"
302-
303- OPTIMIZE_FLAGS="-xO4 -xlibmil -xdepend -xbuiltin"
304- OPTIMIZE_CFLAGS="${OPTIMIZE_FLAGS}"
305- OPTIMIZE_CXXFLAGS="-g0 ${OPTIMIZE_FLAGS}"
306-
307-])
308-
309-AC_ARG_WITH([debug],
310- [AS_HELP_STRING([--with-debug],
311- [Add debug code/turns off optimizations (yes|no) @<:@default=no@:>@])],
312- [with_debug=$withval],
313- [with_debug=no])
314-AS_IF([test "$with_debug" = "yes"],[
315- # Debugging. No optimization.
316- AM_CFLAGS="${AM_CFLAGS} ${DEBUG_CFLAGS} -DDEBUG"
317- AM_CXXFLAGS="${AM_CXXFLAGS} ${DEBUG_CXXFLAGS} -DDEBUG"
318-],[
319- # Optimized version. No debug
320- AM_CFLAGS="${AM_CFLAGS} ${OPTIMIZE_CFLAGS}"
321- AM_CXXFLAGS="${AM_CXXFLAGS} ${OPTIMIZE_CXXFLAGS}"
322-])
323-
324-
325-ENABLE_64BIT
326-
327-AC_HEADER_ASSERT
328-
329-PANDORA_WARNINGS(warnings-always-on)
330-
331-AM_CFLAGS="${AM_CFLAGS} ${CC_WARNINGS} ${CC_PROFILING} ${CC_COVERAGE}"
332-AM_CXXFLAGS="${AM_CXXFLAGS} ${CXX_WARNINGS} ${CC_PROFILING} ${CC_COVERAGE}"
333-
334-AC_SUBST([AM_CFLAGS])
335-AC_SUBST([AM_CXXFLAGS])
336+PANDORA_SWIG
337+PANDORA_SWIG_PYTHON3
338+
339+PANDORA_WITH_LUA
340+PANDORA_WITH_PERL
341+PANDORA_WITH_PYTHON
342+PANDORA_WITH_PYTHON3
343+PANDORA_WITH_RUBY
344+
345
346 # Output files
347 AC_CONFIG_HEADERS([config.h])
348
349=== modified file 'interface/cpuinfo.i'
350--- interface/cpuinfo.i 2009-07-14 07:30:23 +0000
351+++ interface/cpuinfo.i 2009-08-23 00:03:39 +0000
352@@ -1,6 +1,6 @@
353 /*
354 * libcpuinfo: Information about CPU's present on a machine.
355- * Copyright (C) 2009 The libcpuinfo developers.
356+ * Copyright (C) 2009 Monty Taylor
357 *
358 * This program is open source and copying is licenced under the BSD
359 * licence. Please see COPYING.txt distributed with the source code for
360
361=== added directory 'lua'
362=== removed directory 'm4'
363=== removed file 'm4/64bit.m4'
364--- m4/64bit.m4 2009-07-14 07:30:23 +0000
365+++ m4/64bit.m4 1970-01-01 00:00:00 +0000
366@@ -1,47 +0,0 @@
367-dnl ---------------------------------------------------------------------------
368-dnl Macro: ENABLE_64BIT
369-dnl ---------------------------------------------------------------------------
370-AC_DEFUN([ENABLE_64BIT],[
371- AC_ARG_ENABLE([64bit],[
372- AS_HELP_STRING([--disable-64bit],
373- [Build 64 bit binary @<:@default=on@:>@])],
374- [ac_enable_64bit="$enableval"],
375- [ac_enable_64bit="yes"])
376-
377- AC_CHECK_PROGS(ISAINFO, [isainfo], [no])
378- AS_IF([test "x$ISAINFO" != "xno"],
379- [isainfo_b=`${ISAINFO} -b`],
380- [isainfo_b="x"])
381-
382- AS_IF([test "$isainfo_b" != "x"],[
383-
384- isainfo_k=`${ISAINFO} -k`
385- DTRACEFLAGS="${DTRACEFLAGS} -${isainfo_k}"
386-
387- AS_IF([test "x${ac_cv_env_CPPFLAGS_set}" = "x"],[
388- CPPFLAGS="-I/usr/local ${CPPFLAGS}"
389- ])
390-
391- AS_IF([test "x${ac_cv_env_LDFLAGS_set}" = "x"],[
392- LDFLAGS="-L/usr/local/lib/${isainfo_k} ${LDFLAGS}"
393- ])
394-
395- AS_IF([test "x$ac_enable_64bit" = "xyes"],[
396- AS_IF([test "x$libdir" = "x\${exec_prefix}/lib"],[
397- dnl The user hasn't overridden the default libdir, so we'll
398- dnl the dir suffix to match solaris 32/64-bit policy
399- libdir="${libdir}/${isainfo_k}"
400- ])
401-
402- CPPFLAGS="-m64 ${CPPFLAGS}"
403- LDFLAGS="-m64 ${LDFLAGS}"
404- AS_IF([test "$target_cpu" = "sparc" -a "x$SUNCC" = "xyes"],[
405- AM_CFLAGS="-xmemalign=8s ${AM_CFLAGS}"
406- AM_CXXFLAGS="-xmemalign=8s ${AM_CXXFLAGS}"
407- ])
408- ])
409- ])
410-])
411-dnl ---------------------------------------------------------------------------
412-dnl End Macro: ENABLE_64BIT
413-dnl ---------------------------------------------------------------------------
414
415=== removed file 'm4/pandora_vc_build.m4'
416--- m4/pandora_vc_build.m4 2009-07-14 07:30:23 +0000
417+++ m4/pandora_vc_build.m4 1970-01-01 00:00:00 +0000
418@@ -1,32 +0,0 @@
419-dnl Copyright (C) 2009 Sun Microsystems
420-dnl This file is free software; Sun Microsystems
421-dnl gives unlimited permission to copy and/or distribute it,
422-dnl with or without modifications, as long as this notice is preserved.
423-
424-AC_DEFUN([PANDORA_BUILDING_FROM_VC],[
425-
426- ac_cv_building_from_vc=no
427-
428- AS_IF([test -d "${srcdir}/.bzr"],[
429- ac_cv_building_from_bzr=yes
430- ac_cv_building_from_vc=yes
431- ],[
432- ac_cv_building_from_bzr=no
433- ])
434-
435- AS_IF([test -d "${srcdir}/.svn"],[
436- ac_cv_building_from_svn=yes
437- ac_cv_building_from_vc=yes
438- ],[
439- ac_cv_building_from_svn=no
440- ])
441-
442- AS_IF([test -d "${srcdir}/.hg"],[
443- ac_cv_building_from_hg=yes
444- ac_cv_building_from_vc=yes
445- ],[
446- ac_cv_building_from_hg=no
447- ])
448-
449-])
450-
451
452=== removed file 'm4/pandora_warnings.m4'
453--- m4/pandora_warnings.m4 2009-07-14 07:30:23 +0000
454+++ m4/pandora_warnings.m4 1970-01-01 00:00:00 +0000
455@@ -1,251 +0,0 @@
456-dnl Copyright (C) 2009 Sun Microsystems
457-dnl This file is free software; Sun Microsystems
458-dnl gives unlimited permission to copy and/or distribute it,
459-dnl with or without modifications, as long as this notice is preserved.
460-
461-dnl AC_PANDORA_WARNINGS([less-warnings|warnings-always-on])
462-dnl less-warnings turn on a limited set of warnings
463-dnl warnings-always-on always set warnings=error regardless of tarball/vc
464-
465-dnl @TODO: remove less-warnings option as soon as Drizzle is clean enough to
466-dnl allow it
467-
468-AC_DEFUN([PANDORA_WARNINGS],[
469- m4_define([PW_LESS_WARNINGS],[no])
470- m4_define([PW_WARN_ALWAYS_ON],[no])
471- ifdef([m4_define],,[define([m4_define], defn([define]))])
472- ifdef([m4_undefine],,[define([m4_undefine], defn([undefine]))])
473- m4_foreach([pw_arg],[$*],[
474- m4_case(pw_arg,
475- [less-warnings],[
476- m4_undefine([PW_LESS_WARNINGS])
477- m4_define([PW_LESS_WARNINGS],[yes])
478- ],
479- [warnings-always-on],[
480- m4_undefine([PW_WARN_ALWAYS_ON])
481- m4_define([PW_WARN_ALWAYS_ON],[yes])
482- ])
483- ])
484-
485- AC_REQUIRE([PANDORA_BUILDING_FROM_VC])
486- m4_if(PW_WARN_ALWAYS_ON, [yes],
487- [ac_cv_warnings_as_errors=yes],
488- AS_IF([test "$ac_cv_building_from_vc" = "yes"],
489- [ac_cv_warnings_as_errors=yes],
490- [ac_cv_warnings_as_errors=no]))
491-
492- AC_ARG_ENABLE([profiling],
493- [AS_HELP_STRING([--enable-profiling],
494- [Toggle profiling @<:@default=off@:>@])],
495- [ac_profiling="$enableval"],
496- [ac_profiling="no"])
497-
498- AC_ARG_ENABLE([coverage],
499- [AS_HELP_STRING([--enable-coverage],
500- [Toggle coverage @<:@default=off@:>@])],
501- [ac_coverage="$enableval"],
502- [ac_coverage="no"])
503-
504- AS_IF([test "$GCC" = "yes"],[
505-
506- AS_IF([test "$ac_profiling" = "yes"],[
507- CC_PROFILING="-pg"
508- save_LIBS="${LIBS}"
509- LIBS=""
510- AC_CHECK_LIB(c_p, read)
511- LIBC_P="${LIBS}"
512- LIBS="${save_LIBS}"
513- AC_SUBST(LIBC_P)
514- ],[
515- CC_PROFILING=" "
516- ])
517-
518- AS_IF([test "$ac_coverage" = "yes"],
519- [CC_COVERAGE="-fprofile-arcs -ftest-coverage"])
520-
521- AS_IF([test "$ac_cv_warnings_as_errors" = "yes"],
522- [W_FAIL="-Werror"])
523-
524- AC_CACHE_CHECK([whether it is safe to use -fdiagnostics-show-option],
525- [ac_cv_safe_to_use_fdiagnostics_show_option_],
526- [save_CFLAGS="$CFLAGS"
527- CFLAGS="-fdiagnostics-show-option ${AM_CFLAGS} ${CFLAGS}"
528- AC_COMPILE_IFELSE(
529- [AC_LANG_PROGRAM([],[])],
530- [ac_cv_safe_to_use_fdiagnostics_show_option_=yes],
531- [ac_cv_safe_to_use_fdiagnostics_show_option_=no])
532- CFLAGS="$save_CFLAGS"])
533-
534- AS_IF([test "$ac_cv_safe_to_use_fdiagnostics_show_option_" = "yes"],
535- [
536- F_DIAGNOSTICS_SHOW_OPTION="-fdiagnostics-show-option"
537- ])
538-
539- AC_CACHE_CHECK([whether it is safe to use -Wconversion],
540- [ac_cv_safe_to_use_wconversion_],
541- [save_CFLAGS="$CFLAGS"
542- dnl Use -Werror here instead of ${W_FAIL} so that we don't spew
543- dnl conversion warnings to all the tarball folks
544- CFLAGS="-Wconversion -Werror -pedantic ${AM_CFLAGS} ${CFLAGS}"
545- AC_COMPILE_IFELSE(
546- [AC_LANG_PROGRAM([[
547-#include <stdbool.h>
548-void foo(bool a)
549-{
550- (void)a;
551-}
552- ]],[[
553-foo(0);
554- ]])],
555- [ac_cv_safe_to_use_wconversion_=yes],
556- [ac_cv_safe_to_use_wconversion_=no])
557- CFLAGS="$save_CFLAGS"])
558-
559- AS_IF([test "$ac_cv_safe_to_use_wconversion_" = "yes"],
560- [W_CONVERSION="-Wconversion"
561- AC_CACHE_CHECK([whether it is safe to use -Wconversion with htons],
562- [ac_cv_safe_to_use_Wconversion_],
563- [save_CFLAGS="$CFLAGS"
564- dnl Use -Werror here instead of ${W_FAIL} so that we don't spew
565- dnl conversion warnings to all the tarball folks
566- CFLAGS="-Wconversion -Werror -pedantic ${AM_CFLAGS} ${CFLAGS}"
567- AC_COMPILE_IFELSE(
568- [AC_LANG_PROGRAM(
569- [[
570-#include <netinet/in.h>
571- ]],[[
572-uint16_t x= htons(80);
573- ]])],
574- [ac_cv_safe_to_use_Wconversion_=yes],
575- [ac_cv_safe_to_use_Wconversion_=no])
576- CFLAGS="$save_CFLAGS"])
577-
578- AS_IF([test "$ac_cv_safe_to_use_Wconversion_" = "no"],
579- [NO_CONVERSION="-Wno-conversion"])
580- ])
581-
582- NO_STRICT_ALIASING="-fno-strict-aliasing -Wno-strict-aliasing"
583- NO_SHADOW="-Wno-shadow"
584-
585- m4_if(PW_LESS_WARNINGS,[no],[
586- BASE_WARNINGS_FULL="-Wformat=2 ${W_CONVERSION} -Wstrict-aliasing"
587- CC_WARNINGS_FULL="-Wswitch-default -Wswitch-enum -Wwrite-strings"
588- CXX_WARNINGS_FULL="-Weffc++ -Wold-style-cast"
589- ],[
590- BASE_WARNINGS_FULL="-Wformat ${NO_STRICT_ALIASING}"
591- ])
592-
593- AS_IF([test "${ac_cv_assert}" = "no"],
594- [NO_UNUSED="-Wno-unused-variable -Wno-unused-parameter"])
595-
596- BASE_WARNINGS="${W_FAIL} -pedantic -Wall -Wextra -Wundef -Wshadow ${NO_UNUSED} ${F_DIAGNOSTICS_SHOW_OPTION} ${CFLAG_VISIBILITY} ${BASE_WARNINGS_FULL}"
597- CC_WARNINGS="${BASE_WARNINGS} -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls -Wmissing-declarations -Wcast-align ${CC_WARNINGS_FULL}"
598- CXX_WARNINGS="${BASE_WARNINGS} -Woverloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wno-long-long ${CXX_WARNINGS_FULL}"
599-
600- AC_CACHE_CHECK([whether it is safe to use -Wmissing-declarations from C++],
601- [ac_cv_safe_to_use_Wmissing_declarations_],
602- [AC_LANG_PUSH(C++)
603- save_CXXFLAGS="$CXXFLAGS"
604- CXXFLAGS="-Werror -pedantic -Wmissing-declarations ${AM_CXXFLAGS}"
605- AC_COMPILE_IFELSE([
606- AC_LANG_PROGRAM(
607- [[
608-#include <stdio.h>
609- ]], [[]])
610- ],
611- [ac_cv_safe_to_use_Wmissing_declarations_=yes],
612- [ac_cv_safe_to_use_Wmissing_declarations_=no])
613- CXXFLAGS="$save_CXXFLAGS"
614- AC_LANG_POP()
615- ])
616- AS_IF([test "$ac_cv_safe_to_use_Wmissing_declarations_" = "yes"],
617- [CXX_WARNINGS="${CXX_WARNINGS} -Wmissing-declarations"])
618-
619- AC_CACHE_CHECK([whether it is safe to use -Wlogical-op],
620- [ac_cv_safe_to_use_Wlogical_op_],
621- [save_CFLAGS="$CFLAGS"
622- CFLAGS="${W_FAIL} -pedantic -Wlogical-op ${AM_CFLAGS} ${CFLAGS}"
623- AC_COMPILE_IFELSE([
624- AC_LANG_PROGRAM(
625- [[
626-#include <stdio.h>
627- ]], [[]])
628- ],
629- [ac_cv_safe_to_use_Wlogical_op_=yes],
630- [ac_cv_safe_to_use_Wlogical_op_=no])
631- CFLAGS="$save_CFLAGS"])
632- AS_IF([test "$ac_cv_safe_to_use_Wlogical_op_" = "yes"],
633- [CC_WARNINGS="${CC_WARNINGS} -Wlogical-op"])
634-
635- AC_CACHE_CHECK([whether it is safe to use -Wredundant-decls from C++],
636- [ac_cv_safe_to_use_Wredundant_decls_],
637- [AC_LANG_PUSH(C++)
638- save_CXXFLAGS="${CXXFLAGS}"
639- CXXFLAGS="${W_FAIL} -pedantic -Wredundant-decls ${AM_CXXFLAGS}"
640- AC_COMPILE_IFELSE(
641- [AC_LANG_PROGRAM([
642-template <typename E> struct C { void foo(); };
643-template <typename E> void C<E>::foo() { }
644-template <> void C<int>::foo();
645- AC_INCLUDES_DEFAULT])],
646- [ac_cv_safe_to_use_Wredundant_decls_=yes],
647- [ac_cv_safe_to_use_Wredundant_decls_=no])
648- CXXFLAGS="${save_CXXFLAGS}"
649- AC_LANG_POP()])
650- AS_IF([test "$ac_cv_safe_to_use_Wredundant_decls_" = "yes"],
651- [CXX_WARNINGS="${CXX_WARNINGS} -Wredundant-decls"],
652- [CXX_WARNINGS="${CXX_WARNINGS} -Wno-redundant-decls"])
653-
654- NO_REDUNDANT_DECLS="-Wno-redundant-decls"
655- PROTOSKIP_WARNINGS="-Wno-effc++ -Wno-shadow"
656-
657- ])
658-
659- AS_IF([test "$SUNCC" = "yes"],[
660-
661- AS_IF([test "$ac_profiling" = "yes"],
662- [CC_PROFILING="-xinstrument=datarace"])
663-
664- AS_IF([test "$ac_cv_warnings_as_errors" = "yes"],
665- [W_FAIL="-errwarn=%all"])
666-
667- AC_CACHE_CHECK([whether E_PASTE_RESULT_NOT_TOKEN is usable],
668- [ac_cv_paste_result],
669- [
670- save_CFLAGS="${CFLAGS}"
671- CFLAGS="-errwarn=%all -erroff=E_PASTE_RESULT_NOT_TOKEN ${CFLAGS}"
672- AC_COMPILE_IFELSE(
673- [AC_LANG_PROGRAM([
674- AC_INCLUDES_DEFAULT
675- ],[
676- int x= 0;])],
677- [ac_cv_paste_result=yes],
678- [ac_cv_paste_result=no])
679- CFLAGS="${save_CFLAGS}"
680- ])
681- AS_IF([test $ac_cv_paste_result = yes],
682- [W_PASTE_RESULT=",E_PASTE_RESULT_NOT_TOKEN"])
683-
684-
685- m4_if(PW_LESS_WARNINGS, [no],[
686- CC_WARNINGS_FULL="-erroff=E_INTEGER_OVERFLOW_DETECTED${W_PASTE_RESULT}"
687- ],[
688- CC_WARNINGS_FULL="-erroff=E_ATTRIBUTE_NOT_VAR"
689- CXX_WARNINGS_FULL="-erroff=attrskipunsup,doubunder,reftotemp,inllargeuse,truncwarn1,signextwarn,inllargeint"
690- ])
691-
692- CC_WARNINGS="-v -errtags=yes ${W_FAIL} ${CC_WARNINGS_FULL}"
693- CXX_WARNINGS="+w +w2 -xwe -xport64 -errtags=yes ${CXX_WARNINGS_FULL} ${W_FAIL}"
694- PROTOSKIP_WARNINGS="-erroff=attrskipunsup,doubunder,reftotemp,wbadinitl,identexpected,inllargeuse,truncwarn1,signextwarn"
695- NO_UNREACHED="-erroff=E_STATEMENT_NOT_REACHED"
696-
697- ])
698-
699- AC_SUBST(NO_CONVERSION)
700- AC_SUBST(NO_REDUNDANT_DECLS)
701- AC_SUBST(NO_UNREACHED)
702- AC_SUBST(NO_SHADOW)
703- AC_SUBST(NO_STRICT_ALIASING)
704- AC_SUBST(PROTOSKIP_WARNINGS)
705-
706-])
707
708=== removed file 'm4/with_python.m4'
709--- m4/with_python.m4 2009-07-14 07:30:23 +0000
710+++ m4/with_python.m4 1970-01-01 00:00:00 +0000
711@@ -1,42 +0,0 @@
712-dnl Find python developement
713-dnl Copyright (C) 2008 Sun Microsystems, Inc.
714-dnl
715-dnl This program is free software: you can redistribute it and/or modify it
716-dnl under the terms of the GNU General Public License as published by the
717-dnl Free Software Foundation, either version 3 of the License, or (at your
718-dnl option) any later version.
719-dnl
720-dnl This program is distributed in the hope that it will be useful, but
721-dnl WITHOUT ANY WARRANTY; without even the implied warranty of
722-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
723-dnl Public License for more details.
724-dnl
725-dnl You should have received a copy of the GNU General Public License along
726-dnl with this program. If not, see <http://www.gnu.org/licenses/>.
727-dnl
728-dnl As a special exception, the respective Autoconf Macro's copyright owner
729-dnl gives unlimited permission to copy, distribute and modify the configure
730-dnl scripts that are the output of Autoconf when processing the Macro. You
731-dnl need not follow the terms of the GNU General Public License when using
732-dnl or distributing such scripts, even though portions of the text of the
733-dnl Macro appear in them. The GNU General Public License (GPL) does govern
734-dnl all other use of the material that constitutes the Autoconf Macro.
735-
736-
737-AC_DEFUN([WITH_PYTHON], [
738-
739- AC_ARG_WITH([python],
740- [AS_HELP_STRING([--with-python],
741- [Build Python Bindings @<:@default=yes@:>@])],
742- [with_python=$withval],
743- [with_python=yes])
744-
745- AS_IF([test "x$with_python" != "xno"],[
746- AS_IF([test "x$with_python" != "xyes"],[PYTHON=$with_python])
747- AM_PATH_PYTHON([2.4],,[with_python="no"])
748- AC_PYTHON_DEVEL()
749- AS_IF([test "x$pythonexists" = "xno"],[with_python="no"])
750- ])
751- AM_CONDITIONAL(BUILD_PYTHON, [test "$with_python" = "yes"])
752-
753-])
754
755=== removed file 'm4/with_ruby.m4'
756--- m4/with_ruby.m4 2009-07-14 07:30:23 +0000
757+++ m4/with_ruby.m4 1970-01-01 00:00:00 +0000
758@@ -1,91 +0,0 @@
759-dnl Find ruby developemnt
760-dnl Copyright (C) 2008 Sun Microsystems, Inc.
761-dnl
762-dnl This program is free software: you can redistribute it and/or modify it
763-dnl under the terms of the GNU General Public License as published by the
764-dnl Free Software Foundation, either version 3 of the License, or (at your
765-dnl option) any later version.
766-dnl
767-dnl This program is distributed in the hope that it will be useful, but
768-dnl WITHOUT ANY WARRANTY; without even the implied warranty of
769-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
770-dnl Public License for more details.
771-dnl
772-dnl You should have received a copy of the GNU General Public License along
773-dnl with this program. If not, see <http://www.gnu.org/licenses/>.
774-dnl
775-dnl As a special exception, the respective Autoconf Macro's copyright owner
776-dnl gives unlimited permission to copy, distribute and modify the configure
777-dnl scripts that are the output of Autoconf when processing the Macro. You
778-dnl need not follow the terms of the GNU General Public License when using
779-dnl or distributing such scripts, even though portions of the text of the
780-dnl Macro appear in them. The GNU General Public License (GPL) does govern
781-dnl all other use of the material that constitutes the Autoconf Macro.
782-
783-AC_DEFUN([WITH_RUBY], [
784-
785- AC_ARG_WITH([ruby],
786- [AS_HELP_STRING([--with-ruby],
787- [Build Ruby Bindings @<:@default=yes@:>@])],
788- [with_ruby=$withval],
789- [with_ruby=ruby])
790-
791- AS_IF([test "x$with_ruby" != "xno"],[
792- AS_IF([test "x$with_ruby" != "xyes"],
793- [ac_chk_ruby=$with_ruby],
794- [ac_chk_ruby=ruby1.8 ruby])
795- AC_CHECK_PROGS(RUBY,$ac_chk_ruby)
796- ])
797-
798- AS_IF([test "x$RUBY" != "x"],[
799-
800- AC_MSG_CHECKING(for ruby devel)
801-
802- dnl need to change quotes to allow square brackets
803- changequote(<<, >>)dnl
804- ruby_prefix=`$RUBY -rrbconfig -e "print Config::CONFIG['archdir']"`
805- strip_ruby_prefix=`$RUBY -rrbconfig -e "print Config::CONFIG['prefix']" | sed 's/\//./g'`
806-
807- RUBY_LIB=`$RUBY -rrbconfig -e "puts Config::CONFIG['ruby_install_name']"`
808- LIBRUBYARG_SHARED=`$RUBY -rrbconfig -e "puts Config::CONFIG['LIBRUBYARG_SHARED']"`
809- RUBY_DIR=`$RUBY -rrbconfig -e "puts Config::CONFIG['archdir']"`
810- RUBY_ARCH_DIR=`echo $RUBY_DIR | sed "s/$strip_ruby_prefix//"`
811- RUBY_LIBDIR=`$RUBY -rrbconfig -e "puts Config::CONFIG['rubylibdir']"`
812- RUBY_INCLUDES="-I$ruby_prefix"
813- changequote([, ])dnl
814-
815- ac_save_CFLAGS="$CFLAGS"
816- ac_save_CPPFLAGS="$CPPFLAGS"
817- ac_save_LDFLAGS="$LDFLAGS"
818- CFLAGS="$ac_save_CFLAGS $RUBY_INCLUDES"
819- CPPFLAGS="$ac_save_CPPFLAGS $RUBY_INCLUDES"
820- LDFLAGS="$ac_save_LDFLAGS $LIBRUBYARG_SHARED"
821-
822- AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <ruby.h>]], [[VALUE rb_ac_test = rb_define_module("actest");]])],[with_ruby="yes";AC_MSG_RESULT(found)],[with_ruby="no";AC_MSG_RESULT(missing)])
823-
824- CPPFLAGS="$ac_save_CPPFLAGS"
825- CFLAGS="$ac_save_CFLAGS"
826- LDFLAGS="$ac_save_LDFLAGS"
827- ],[
828- # This allows 'make clean' in the ruby directory to work when
829- # ruby isn't available
830- RUBY=
831- RUBY_INCLUDES=
832- LIBRUBYARG_SHARED=
833- RUBY_LIB=
834- RUBY_DIR=
835- RUBY_LIBDIR=
836- RUBY_ARCH_DIR=
837- with_ruby="no"
838- ])
839-
840- AC_SUBST(RUBY_INCLUDES)
841- AC_SUBST(LIBRUBYARG_SHARED)
842- AC_SUBST(RUBY_LIB)
843- AC_SUBST(RUBY_DIR)
844- AC_SUBST(RUBY_LIBDIR)
845- AC_SUBST(RUBY_ARCH_DIR)
846-
847- AS_IF([test "x$RUBY_DIR" = "x"],[with_ruby="no"])
848- AM_CONDITIONAL(BUILD_RUBY, test "$with_ruby" = "yes")
849-])
850
851=== added directory 'perl'
852=== added directory 'python'
853=== added directory 'python3'
854=== added directory 'ruby'

Subscribers

People subscribed via source and target branches

to all changes: