Hi,
An attempt to building rivet-2.2.0 resulted in the following error:
libtool: compile: gcc -m64
-specs=/path/to/tcl_rivet-2.2.0-tcl-8.5.17/gccspecs/specs
-DHAVE_CONFIG_H -I. -I.. -Iapache-2 -Ichannel -Iparser -Irequest
-I/path/to/apache_httpd-2.2.27-default/include
-I/tmp/tcl_rivet-2.2.0-tcl-8.5.17/rivet-2.2.0/src
-I/path/to/tcl-8.5.17-default/include -fpic
-I/path/to/apache_httpd-2.2.27-default/include -DLINUX -D_REENTRANT
-D_GNU_SOURCE -I/path/to/apr-1.5.1-default/include/apr-1
"-DSTART_TAG=\"<?\"" "-DEND_TAG=\"?>\"" -fpic -pipe -O2
-fomit-frame-pointer -Wall -fPIC -isystem
/tmp/tcl_rivet-2.2.0-tcl-8.5.17 -isystem
/path/to/tcl_rivet-2.2.0-tcl-8.5.17/include -isystem
/path/to/i64f6m13s1l2618c25e/include -MT
request/mod_rivet_la-apache_multipart_buffer.lo -MD -MP -MF
request/.deps/mod_rivet_la-apache_multipart_buffer.Tpo -c
request/apache_multipart_buffer.c -fPIC -DPIC -o
request/.libs/mod_rivet_la-apache_multipart_buffer.o
In file included from
/path/to/apache_httpd-2.2.27-default/include/httpd.h:43,
from request/apache_request.h:4,
from request/apache_multipart_buffer.h:21,
from request/apache_multipart_buffer.c:25:
/path/to/apache_httpd-2.2.27-default/include/ap_config.h:26:23:
error: apr_hooks.h: No such file or directory
The problem is that in this particular software collection, each
software
distribution is installed into an isolated directory, and the header
files for
apr-utils are not in the same directory as the header files for apr.
Modifying
the autoconf and automake files to treat those two sets of headers
separately
solved the problem. The attached patch has the details.
--
Yorick
diff -Naur rivet-2.2.0/configure.ac rivet-2.2.0.new/configure.ac
--- rivet-2.2.0/configure.ac 2014-06-04 18:30:35.000000000 -0400
+++ rivet-2.2.0.new/configure.ac 2015-01-03 09:49:42.000030000 -0500
@@ -333,7 +333,7 @@
AC_ARG_WITH(
apr_config,
[ --with-apr-config=FILE apr portable apr-1-config path],
- [if test -x "${with_apr_config}"; then
+ [if "${with_apr_config}" --version; then
apr_found="${with_apr_config}"
fi]
,
@@ -347,7 +347,7 @@
apr_found="${with_apr_config}"
fi
else
- AC_MSG_ERROR( Specify the apr-1-config path using --with-apr-config, 1)
+ AC_MSG_ERROR( Specify the apr-1-config path or program name using --with-apr-config, 1)
fi]
)
if test "${apr_found+set}" = set ; then
@@ -366,6 +366,43 @@
fi
])
+AC_DEFUN([APU_HANDLING],[
+ AC_MSG_CHECKING(for Apache apu)
+ AC_ARG_WITH(
+ apu_config,
+ [ --with-apu-config=FILE apu portable apu-1-config path],
+ [if "${with_apu_config}" --version; then
+ apu_found="${with_apu_config}"
+ fi]
+ ,
+ [if test apu-1-config --version; then
+ apu_found=apu-1-config
+ elif test -x "${apache_base}/bin/apu-1-config" ; then
+ apu_found="${apache_base}/bin/apu-1-config"
+ elif test -x "${apache_base}/sbin/apu-1-config" ; then
+ apu_found="${apache_base}/sbin/apu-1-config"
+ elif test "${apache_base+set}" = set; then
+ AC_PATH_PROGS(with_apu_config, apu-1-config)
+ if test "${with_apu_config+set}" = set ; then
+ apu_found="${with_apu_config}"
+ fi
+ else
+ AC_MSG_ERROR( Specify the apu-1-config path or program name using --with-apu-config, 1)
+ fi]
+)
+ if test "${apu_found+set}" = set ; then
+ AC_MSG_RESULT([$apu_found])
+ dnl At this point we already have apu sorted out
+ dnl It actually calls another script, so the PATH needs to be set.
+ export PATH=$PATH:`dirname ${apu_found}`
+ APU_INCLUDES=`${apu_found} --includes`
+ AC_SUBST(APU_INCLUDES)
+ APU_LDLFAGS=`${apu_found} --link-libtool --libs`
+ AC_SUBST(APU_LDFLAGS)
+ else
+ AC_MSG_ERROR([Could not find apu-1-config. apu-1-config must be in your PATH or you must specify the location of the apu script using --with-apu-config])
+ fi
+])
#--------------------------------------------------------------------
# 6-Dec-2011: Introducing new ::rivet namespace. Some components
@@ -691,6 +728,7 @@
CHECK_APXS
APACHE_INCLUDES
APR_HANDLING
+APU_HANDLING
RIVET_TCL_LIB
DISPLAY_RIVET_VERSION
UPLOAD_DIRECTORY
diff -Naur rivet-2.2.0/src/Makefile.am rivet-2.2.0.new/src/Makefile.am
--- rivet-2.2.0/src/Makefile.am 2014-04-17 10:10:17.000000000 -0400
+++ rivet-2.2.0.new/src/Makefile.am 2015-01-03 01:00:25.000024000 -0500
@@ -31,9 +31,9 @@
# Rivet Library
#
librivetlib_la_SOURCES = librivet/rivetList.c librivet/rivetCrypt.c librivet/rivetWWW.c librivet/rivetPkgInit.c
-librivetlib_la_LDFLAGS = @TCL_STUB_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ -module -avoid-version
+librivetlib_la_LDFLAGS = @TCL_STUB_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ @APU_LDFLAGS@ -module -avoid-version
librivetlib_la_LIBADD = @APXS_LIBS@
-librivetlib_la_CPPFLAGS = -I@apache_version_dir@ -I@apache_request@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_INCLUDES@ @APR_CPPFLAGS@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"' -DUSE_TCL_STUBS
+librivetlib_la_CPPFLAGS = -I@apache_version_dir@ -I@apache_request@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_INCLUDES@ @APU_INCLUDES@ @APR_CPPFLAGS@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"' -DUSE_TCL_STUBS
#
# mod_rivet
@@ -41,9 +41,9 @@
apxs_libexecdir = @APXS_LIBEXECDIR@
apxs_libexec_LTLIBRARIES = mod_rivet.la
-mod_rivet_la_LDFLAGS = @TCL_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ -module -avoid-version
+mod_rivet_la_LDFLAGS = @TCL_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ @APU_LDFLAGS@ -module -avoid-version
mod_rivet_la_LIBADD = @TCL_LIBS@ @APXS_LIBS@
-mod_rivet_la_CPPFLAGS = -I@apache_version_dir@ -Ichannel -Iparser -I@apache_request@ @apache_include@ -I@RIVET_BASE_INCLUDE@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_CPPFLAGS@ @APR_INCLUDES@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"'
+mod_rivet_la_CPPFLAGS = -I@apache_version_dir@ -Ichannel -Iparser -I@apache_request@ @apache_include@ -I@RIVET_BASE_INCLUDE@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_CPPFLAGS@ @APR_INCLUDES@ @APU_INCLUDES@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"'
mod_rivet_la_SOURCES = \
diff -Naur rivet-2.2.0/src/apache-2/Makefile.am rivet-2.2.0.new/src/apache-2/Makefile.am
--- rivet-2.2.0/src/apache-2/Makefile.am 2013-11-04 18:51:02.000000000 -0500
+++ rivet-2.2.0.new/src/apache-2/Makefile.am 2015-01-03 00:58:51.000335000 -0500
@@ -44,9 +44,9 @@
###mod_rivet_la_SOURCES = mod_rivet.c mod_rivet.h
-#mod_rivet_la_LDFLAGS = @TCL_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ -module -avoid-version
+#mod_rivet_la_LDFLAGS = @TCL_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ @APU_LDFLAGS@ -module -avoid-version
#mod_rivet_la_LIBADD = @TCL_LIBS@ @APXS_LIBS@
-#mod_rivet_la_CPPFLAGS = @apache_include@ -I@RIVET_BASE_INCLUDE@ -I../parser @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_CPPFLAGS@ @APR_INCLUDES@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"'
+#mod_rivet_la_CPPFLAGS = @apache_include@ -I@RIVET_BASE_INCLUDE@ -I../parser @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_CPPFLAGS@ @APR_INCLUDES@ @APU_INCLUDES@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"'
# APXS_CPPFLAGS_SHLIB
diff -Naur rivet-2.2.0/src/librivet/Makefile.am rivet-2.2.0.new/src/librivet/Makefile.am
--- rivet-2.2.0/src/librivet/Makefile.am 2014-04-17 10:10:17.000000000 -0400
+++ rivet-2.2.0.new/src/librivet/Makefile.am 2015-01-03 00:59:42.000033000 -0500
@@ -28,6 +28,6 @@
##
#librivetlib_la_SOURCES = rivetList.c rivetCrypt.c rivetWWW.c rivetPkgInit.c
-#librivetlib_la_LDFLAGS = @TCL_STUB_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ -module -avoid-version
+#librivetlib_la_LDFLAGS = @TCL_STUB_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ @APU_LDFLAGS@ -module -avoid-version
#librivetlib_la_LIBADD = @APXS_LIBS@
-#librivetlib_la_CPPFLAGS = -I.. -I../@apache_version_dir@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_INCLUDES@ @APR_CPPFLAGS@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"' -DUSE_TCL_STUBS
+#librivetlib_la_CPPFLAGS = -I.. -I../@apache_version_dir@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_INCLUDES@ @APU_INCLUDES@ @APR_CPPFLAGS@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"' -DUSE_TCL_STUBS
diff -Naur rivet-2.2.0/src/librivet/Makefile.in rivet-2.2.0.new/src/librivet/Makefile.in
--- rivet-2.2.0/src/librivet/Makefile.in 2014-06-10 11:07:30.000000000 -0400
+++ rivet-2.2.0.new/src/librivet/Makefile.in 2015-01-03 09:50:39.000031000 -0500
@@ -106,6 +106,8 @@
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/acinclude.m4 $(top_srcdir)/tclconfig/tcl.m4 \
$(top_srcdir)/tclconfig/libtool.m4 \
$(top_srcdir)/m4/ax_prefix_config_h.m4 \
@@ -143,6 +145,8 @@
APR_CPPFLAGS = @APR_CPPFLAGS@
APR_INCLUDES = @APR_INCLUDES@
APR_LDFLAGS = @APR_LDFLAGS@
+APU_INCLUDES = @APU_INCLUDES@
+APU_LDFLAGS = @APU_LDFLAGS@
APXS_CPPFLAGS = @APXS_CPPFLAGS@
APXS_CPPFLAGS_SHLIB = @APXS_CPPFLAGS_SHLIB@
APXS_INCLUDES = @APXS_INCLUDES@
@@ -325,6 +329,7 @@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
with_apr_config = @with_apr_config@
+with_apu_config = @with_apu_config@
with_apxs = @with_apxs@
all: all-am
@@ -519,9 +524,9 @@
#librivetlib_la_SOURCES = rivetList.c rivetCrypt.c rivetWWW.c rivetPkgInit.c
-#librivetlib_la_LDFLAGS = @TCL_STUB_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ -module -avoid-version
+#librivetlib_la_LDFLAGS = @TCL_STUB_LIB_SPEC@ @APXS_LDFLAGS@ @APR_LDFLAGS@ @APU_LDFLAGS@ -module -avoid-version
#librivetlib_la_LIBADD = @APXS_LIBS@
-#librivetlib_la_CPPFLAGS = -I.. -I../@apache_version_dir@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_INCLUDES@ @APR_CPPFLAGS@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"' -DUSE_TCL_STUBS
+#librivetlib_la_CPPFLAGS = -I.. -I../@apache_version_dir@ @TCL_INCLUDES@ @APXS_CPPFLAGS@ @APXS_INCLUDES@ @APR_INCLUDES@ @APU_INCLUDES@ @APR_CPPFLAGS@ -DSTART_TAG='"<?"' -DEND_TAG='"?>"' -DUSE_TCL_STUBS
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]