[ http://issues.apache.org/jira/browse/AXIS2C-313?page=comments#action_12444760 ] Chris Darroch commented on AXIS2C-313: --------------------------------------
I've included some quick patches in AXIS2C-376 and AXIS2C-312 that deal with a few bits of the issues raised above. A few other quick things that could be done are in Makefile.am, change to using: docsdir=$(docdir) so that --docdir works, and in modules/core/transport/http/server/simple_axis2_server/Makefile.am: prgbindir=$(bindir) so that axis2_http_server goes in the right place. > improve autoconf support > ------------------------ > > Key: AXIS2C-313 > URL: http://issues.apache.org/jira/browse/AXIS2C-313 > Project: Axis2-C > Issue Type: Improvement > Components: build system (Unix/Linux) > Affects Versions: 0.93 > Environment: Unix/Linux, maybe Windows and others. > Reporter: Chris Darroch > Assigned To: Sanjaya Ratnaweera > > The autoconf system really isn't being used effectively for the axis2c > package. First, as noted > in another bug report, some of the code searches for libraries in > $AXIS2C_HOME/lib regardless > of what is specified by the user when using the --libdir configure option. > Second, it would be better if include files were installed in, say, > $includedir/axis2, the way > the APR project installs them in $includedir/apr-$majorversion and httpd > installs them > in $includedir/apache2. Given that 375 files are installed, this is > otherwise a major source > of pollution in a common location. > Third, if one uses --libdir, --includedir, and --bindir, then each successive > installation > of an axis2c sub-project (like xml_schema or woden) and the main axis2c > installation itself > should use these locations to search for dependencies. As it is, the util > sub-project > installs quite neatly, but then all the others require patches to their > Makefiles and/or specific > CFLAGS and LDFLAGS settings so that they can locate the previous sub-projects' > headers and libraries. This really shouldn't be necessary; they should look > in --libdir > and --includedir automatically. > Fourth, the various test suites that run when "make check" is used fail in a > wide variety of > ways. Many of the test suites depend on libcutest.a -- but this isn't > something the CuTest > package provides! Instead, you have to dig out a posting to the mailing list: > http://www.mail-archive.com/[email protected]/msg04697/Makefile > (An alternative would be the derived version that the APR test suite uses.) > Other tests > depend on data files that aren't in the distribution; for example, the > xml_schema tests > seem to require the files from > https://svn.apache.org/repos/asf/webservices/commons/trunk/modules/XmlSchema/src/test/test-resources/ > in a "resources" directory. The woden tests require a Calculator.wsdl file > that I found in > https://svn.apache.org/repos/asf/webservices/axis2/trunk/c/test/resources/wsdl, > but it > required that the xmlns:wsdl="http://schemas.xmlsoap.org/wsdl" attribute > *not* have a > trailing slash and WODEN_WSDL10_DESC_GET_INTERFACES() be used. The > util/test/util/test_util.c file calls run_test_string(env) after freeing the > env variable, producing > a segfault. And so forth. > Fifth, while I realize this would be a pain, it would be really superb if one > could control > the layout of the $AXIS2C_HOME location using the kinds of options provided > by the > config.layout file in the httpd package. More, instead of requiring > directories under > $AXIS2C_HOME named "logs", "services", "modules", and so forth, and requiring > that > the libraries in the services and modules directories be accompanied by XML > files, > it would be great if you could ask for a layout like this: > $prefix = $MY_INSTALL_DIR > $bindir = $prefix/bin (by default, use --bindir to change) > $includedir = $prefix/include/axis2 (by default, use --includedir to change) > $libdir = $prefix/lib/axis2 (by default, use --libdir to change) > $sysconfdir = $prefix/etc/axis2 (by default, use --sysconfdir to change) > $localstatedir = $prefix (by default, use --localstatedir to change) > $logfiledir = $localstatedir/logs (by default, use config.layout or axis2.xml > to change) > $servicesdir = $libdir/services (by default, use config.layout or axis2.xml > to change) > $modulesdir = $libdir/modules (by default, use config.layout or axis2.xml to > change) > The axis2.xml file would be expected to reside in $sysconfdir. There would be > runtime options (like httpd's -f option) that would allow the user to point > to another > non-standard file, though. This file would could then contain <logsDir>, > <servicesDir>, <modulesDir> to point to non-standard directories for those > things, > if the user wanted a different layout. Among other things, this kind of > framework > allows for easy switching between different versions of the same services and > modules for testing purposes. > Sorry to sound negative about all this -- the axis2c package looks to be > ideal for my > purposes (combining it with mod_dbd inside httpd); I've just had to struggle > with the > installation process quite a bit to get things laid out the way I want them. > Thanks for > listening! -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
