summaryrefslogtreecommitdiff
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* 3.2 to go3.2clutton2016-05-031-31/+14
|
* removed forgotten echo from Makefile.in, reference to a ↵clutton2016-04-281-9/+9
| | | | include_server/__init__.py file and StripTrailingWhitespaces vim script
* include_server python(3) readypython3clutton2016-04-141-25/+2
|
* Check that the system popt is linkablemandyke2014-07-291-1/+3
| | | Fixes issue 31
* lzo: Update to 2.08mandyke2014-07-291-0/+3
| | | Fixes issue 142
* Fix cut-and-paste error in previous change.fergus.henderson2014-04-021-1/+1
|
* Apply patch for issue 139fergus.henderson2014-04-021-9/+13
| | | | | | | <http://code.google.com/p/distcc/issues/detail?id=139>: add configure option --without-libiberty, to allow building distcc without GPL3 license encumbrance.
* Fix logic with --disable-rfc2553mandyke2014-03-031-2/+5
| | | | | | Passing the above option to configure should not cause ENABLE_RFC2553 to be defined. Fixes issue 68
* Identify location of libiberty.hmandyke2014-03-031-0/+6
|
* Support @FILE arguments correctly. Requires GNU libiberty.mandyke2013-05-081-0/+3
| | | Fixes issue 85
* Apply patch for issue 87 <http://code.google.com/p/distcc/issues/detail?id=87>:fergus.henderson2012-02-061-7/+8
| | | | | Only undefine _FORTIFY_SOURCE when building with -Werror.
* Add support for Python 2.7.fergus.henderson2012-02-061-1/+1
|
* Update the NEWS and ChangeLog files, and set the version number to 3.2rc1,fergus.henderson2011-10-251-1/+1
| | | | | | | in preparation for releasing distcc version 3.2. Reviewed by Craig Silverstein.
* Support Python 2.6.fergus.henderson2011-04-061-1/+1
| | | | | Reviewed by Craig Silverstein.
* Define a GNU-compatible getline() implementation,fergus.henderson2009-07-241-0/+1
| | | | | | in case we don't have getline() available. Reviewed by Craig Silverstein.
* Apply patch from Ian.Baker@cern.ch:fergus.henderson2009-07-231-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | Optional GSS-API Functionality. This patch implements mutual authentication, out of sequence and replay detection using the GSS-API. The changes implemented are optional and are turned off by default. This option is specified to the client through an environment variable as is the name of the server principal to authenticate. Currently the server principal can be left unspecified and a default based on the host keytab will be used. This option is specified to the daemon through a command line option, with the name of the principal whose credentials the daemon should use specified as an environment variable. A simple handshake is exchanged between the client and server in order to prevent unecessary delays and protocol derailments when mixing authenticating and non-authenticating clients and servers. Revised based on review comments. GSS-API authentication is now implemented as a per host option. Revised further by me (Fergus Henderson) to fix a spelling error and to rename the per host option from ",gssapi" to ",auth".
* 1. Fix some compilation errors arising from the use offergus.henderson2008-12-021-6/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -Wwrite-strings when compiling the python extension module, due to lack of const correctness in the Python 2.2 "Python.h" header file. This problem was introduced by the fix for distcc issue 26 <http://code.google.com/p/distcc/issues/detail?id=26>. The solution was to explicitly disable these warnings with -Wno-write-strings. 2. Centralize the use of gcc-specific compilation options in conditional code in configure.ac that is only executed if we're using gcc. Previously include_server/setup.py was hard-coding gcc-specific options, regardless of whether we're using gcc. 3. Don't use -Wuninitialized if CFLAGS doesn't contain "-O*", because -Wuninitialized only works if optimization is enabled. This avoids a gcc warning (and hence an error with -Werror) about -Wuninitialized not having any effect when distcc is configured with "CFLAGS=-g ./configure". 4. Add a new configure option "--disable-Werror". For the 3.0 release of distcc, some people porting distcc resorted to patching distcc to remove the -Werror option. -Werror is useful, so I want to keep it enabled by default, but I'd prefer that people are able to port distcc easily, hence the configure option. This addresses distcc issue 20 <http://code.google.com/p/distcc/issues/detail?id=20>. Reviewers: Craig Silverstein
* Bump version number to 3.1, and update the NEWS file and ChangeLog.fergus.henderson2008-12-011-1/+1
| | | | | Reviewed by Craig Silverstein.
* Change version number to "3.0", and update NEWS file and ChangeLog.fergus.henderson2008-08-061-1/+1
|
* Time for another release candidate.fergus.henderson2008-08-021-1/+1
|
* Bump version number to 3.0rc3, and update NEWS file and ChangeLog.fergus.henderson2008-07-311-1/+1
| | | | Reviewed by Craig Silverstein.
* Fix a bug that caused "make check" to fail: MissingCompiler_Casefergus.henderson2008-07-291-4/+11
| | | | | | | | | | | | | | | | | | | | was reporting an unexpected exit status: 139 instead of 110. This was caused by a seg fault in distccd, deep in the bowels of vsnprintf(), which appears to be due to calling vsnprintf() twice on the same va_list. The fix is to use va_copy() in src/trace.c. Of course it's never quite as easy as that. va_copy() exists only in C99, not in C89. Some implementations have __va_copy() but not va_copy(). So we need to autoconf it. There was already an autoconf test for this, but only for __va_copy. I've moved the code which defined VA_COPY from snprintf.c to a new header file va_copy.h, and added a VA_COPY_END macro. Also, fix another bug that I noticed at the same time: snprintf.c was using va_copy(), but was not matching each call to va_copy with a corresponding call to va_end(), as required by the C99 standard.
* This adds an option for disabling avahi and friends. This is useful forzhanglei2008-07-171-13/+18
| | | | | | | | building distcc targeted to machines without libavahi on a machine with libavahi. Reviewed by Fergus Henderson.
* Bump version number to 3.0rc2.fergus.henderson2008-06-201-1/+1
|
* I had talked Fergus into changing the version number from 3.0rc1 toCraig Silverstein2008-06-091-1/+1
| | | | | 3.0-rc1. But now rpm is complaining that - is illegal in a version string, so I'm changing it back to 3.0rc1. Sorry Fergus...
* Change version number to 3.0rc1fergus.henderson2008-06-091-1/+1
| | | | | | (for "release candidate 1"). Reviewers: Craig Silverstein
* Fix up the list of zeroconf files needed to actually compile distccCraig Silverstein2008-06-031-2/+5
| | | | | | | | and distccd. Tested by installing avahi and running 'make' plus 'make check'. Reviewed by klarlund
* Documentation fixes:Craig Silverstein2008-05-301-1/+1
| | | | | | | | | | | | | | | | 1) Replace http://distcc.samba.org with the new google code location 2) Add favicon.ico from the distcc.samba.org site 3) Use distcc@lists.samba.org as the only distcc mailing list (there were at least three mailing lists scattered around the docs, some of which don't even exist anymore!) 4) Update man pages and other docs to not use "distcc-pump" anywhere; it's now "pump mode" or "distcc's pump mode", or "distcc-pump mode". I also add, to the README, some discussion of scaling to hundreds of machines. Reviewed by fergus and klarlund
* Update copyright and GPL notice.Craig Silverstein2008-05-231-9/+9
|
* Bump version number to 3.0-prerelease3.fergus.henderson2008-05-221-1/+1
| | | | Reviewers: Craig Silverstein
* Instead of a hack to figure out if pump is installed or not -- oneCraig Silverstein2008-05-151-6/+0
| | | | | | | | | | | | | | | | | | that fails on macs with python 2.5 (at least) because of weirdnesses with distutils installation on that platform -- just rewrite pump at install-time to indicate it's installed. We take the opportunity to tell pump where the installed include_server.py is, because it needs to know, and we know that during 'make install'. Tested by running 'make distcheck' on linux (ubuntu) with python 2.4, and mac 10.5 with python 2.5. I also tested by running, on the linux machine, ./configure --prefix=/tmp/distcc.install && make install && make DISTCC_INSTALLATION=/tmp/distcc.install/bin installcheck Furthermore, I manually inspected the installed pump file after that to make sure it looked correct. Reviewed by klarlund@google.com and fergus@google.com
* Make distcc 3.0 compatible with Python 2.5.klarlund2008-05-141-1/+1
| | | | | | | | | | | | | Tests: I made PATH=$PATH:/usr/python/bin (where python2.5 resides on my machine). I ran autogen and reconfigured. Then I did: make include-server-maintainer-check make pump-maintainer-check and I made sure that -Is now are set according to Python2.5.
* In the non-included popt case, POPT_INCLUDES was the empty string,Craig Silverstein2008-05-131-1/+2
| | | | | | | | | | | leading to a compile command that had -I"" in it. Who knows what that means? Now the -I is part of POPT_INCLUDES, so when it's absent we don't add anything to CPPFLAGS. Tested on a machine where POPT_INCLUDES is not empty and one where it is. Reviewed by klarlund@google.com
* Make the identification of Python 'binaries' more robust.klarlund2008-05-091-1/+7
| | | | | | | | | Use the distutil function that generates the library name for locating the Python stuff in an installation. Reviewers: fergus@google.com, csilvers@google.com Test: make distcheck
* Make handling of config.h sound.klarlund2008-05-091-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (1) Correct order of -Is in Makefile. (2) remove unnessary PATH modification in configure.ac (this is fergus's suggestion -- hopefully this will do, this replaces a circumvention mechanism I had originally concocted. (3) Fix place of the include of popt in CPPFLAGS. (4) Convert quoted includes of config.h to angle bracket includes so that the build version, not the source version, of this file is picked up. The order of -Is in the build system is wrong: it contradicts the VPATH mechanism. This means that builds in a build directory different from that of the source (distribution) directory will find wrong files even after the hapless developer has issued only a 'configure' command in the source directory (but not actually 'made' any thing there). For in that case, the src/config.h will be generated in the source directory and this will be the file picked in the build directory even if that directory has it's own src/config.h. This can lead to wrong builds and it can be hard to diagnose the problem. Currently, this what CPPFLAGS end up being (as found in the generated Makefile): CPPFLAGS = -DHAVE_CONFIG_H -D_GNU_SOURCE \ -I../distcc/popt -I../distcc/src \ ${DIR_DEFS} \ -Isrc -Ilzo \ -I"$(srcdir)/src" -I"$(srcdir)/lzo" \ Here my source dir was ../distcc. The presence of '-I../distcc/popt' in front of -Isrc is the exact opposite of the semantics of VPATH mechanism, which looks for files in the build directory, then in the source directory. Also, note the remarks in: http://www.gnu.org/software/autoconf/manual/autoconf.html#Configuration-Headers (they do not quite correctly discuss the search path, btw). TESTING: I verified that with a corrupted config.h file in the source directory, building now succeeds. Also: make distcheck (it fails the same place as before: this is corrected in another change of mine --- I'll verify that with that change in place, this change makes 'make distcheck' succeed.) REVIEWERS: fergus@google.com, csilvers@google.com
* Explain stamp files and remove unneeded @src_dir@ (which was misspelled?).klarlund2008-05-021-0/+2
| | | | | TESTED: make distcheck REVIEWED: csilvers@google.com, fergus@google.com
* For machines without python installed, before this change we'd checkCraig Silverstein2008-05-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | for that case, but still give an error rc in that case, so the make would fail. Now I make sure we don't fail just because we don't have python installed. Also, some machines (solaris 10) don't have a grep with -q, so just use >/dev/null insteasd. Third, we had left out a file to add to the tarball: ontest.py. Fourth, 'make distcheck' fails a bit on the pump-installcheck. I've addressed some of the problems, but others remain. Finally -- and this is the bulk of the change, line-count wise, I added quotes around all variables, so we do the right thing when variables have spaces or other shell-meaningful characters in them, as indeed they often do on windows machines. Tested by running 'make check' on various architectures, including solaris 10 x86 and cygwin. Reviewed by klarlund@google.com and fergus@google.com
* This test was broken before: I needed to escape [ and ] from m4.Craig Silverstein2008-05-011-1/+1
| | | | | | Tested by running configure on a machine with python 2.2 installed. Reviewed by fergus@google.com
* Include-server requires python 2.4 or higher, but the test frameworkCraig Silverstein2008-05-011-6/+27
| | | | | | only requires python 2.2. Check for both, so for folks with python 2.2 or python 2.3, they can at least run the tests, even if they can't install the include-server.
* These changes are enough to get code to compile, and at least some ofCraig Silverstein2008-04-281-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | the unittests to pass, on FreeBSD 6.0, Solaris 10 x86, and OS X Leopard. You have to use gmake instead of standard bsd make, though, because neither bsd nor solari make understand 'include */*.d' and 'CFLAGS += $(POPT_FLAGS).' These may be fixable later. Most changes fall into four categories: 1) #include differences 2) New errors due to some #ifdef paths being taken differently 3) Undefined functions (see, eg, the new HAVE_STRSEP) 4) Type differences (eg tv_usec is an int on os x, not a long int) As one concrete example, snprintf.c is an empty file on linux, where all the functionality is part of glibc. But on Solaris, some of its functionality is useful. This turned up a bug where if you have vsnprintf on your system but not vasnprintf, then dopr() was not being used but was being defined, leading to an "unused static function" warning in gcc. As another, solaris would complain about "index" being used as a variable, since it's also a function name. The var was renamed idx. Tested by compiling on FreeBSD, Solaris 10, and OS X leopard (x86). I also compiled and ran unittests under Linux Ubuntu, to make sure this change didn't break anything there. Reviewed by fergus@google.com
* Neglected to commit this with the Makefile.am changes from last time,Craig Silverstein2008-04-241-0/+2
| | | | | | though it's needed to define UNINSTALL_GNOME. Reviewed by fergus@google.com
* Fix some bugs in the googlecode-upload script, and modify the uploadCraig Silverstein2008-04-191-1/+1
| | | | | | | | | | | target in the Makefile to call it. Also added googlecode_upload.py to the dist tarball. Also update the version number to prerelease2. As part of testing this change, I actually uploaded the tarballs and rpm files to code.google.com. Reviewed by fergus@google.com
* Resolve some TODO's in the Makefile (and, to a lesser extent, inCraig Silverstein2008-04-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | configure.ac): 1) Create a .gz tarfile as well as a .bz2 tarfile, with "make dist". I've also added a few more dist rules: "make rpm", "make deb", and "make alldist", though currently they're commented out since the scripts they call have yet to be written. 2) setup.py looks at os.environ("BUILDDIR"), so make sure that environment variable is always set properly. 3) setup.py was hard-coding the version number. Instead, have it get it from the environment ("DISTCC_VERSION"), and set that envvar before calling setup.py in the Makefile. (The alternate solution, of making a setup.py.in and having configure set the version number in setup.py, did not work well because the Makefile really wants setup.py to be in $srcdir, that the configure option puts it in builddir.) 4) Clean up distcheck to have three separate directories: src, build, and install. Before src and build were the same. This pulled up several places that were using srcdir instead of builddir, which I fixed. 5) Clean up distcheck to make sure that 'make distclean' cleans all the build files created during the build. At first it didn't quite, so I fixed that up as well. 6) Added some new files to 'make dist': particularly, the files used to build rpm and deb files. 7) Have maintainer-check and maintainer-installcheck both call the same routine (via recursive make) rather than copy all that code. This simplifies things surprisingly, especially since the main check logic no longer has be inside a big "if $(PYTHON)". 8) (Various rules:) replace $^, which is not very portable, with a repetition of the dependency line. 9) Rename GZIP to GZIP_BIN, since GZIP as an envvar is read by gzip and parsed as gzip options. 10) In include_server/setup.py, we weren't setting builddir/src as an include dir, and it needs to be (as 'make distcheck' shows). I'm not sure builddir/../../src really needs to be anymore, but I guess it can't hurt, so I've left it in. 11) Updated INSTALL to refer to autogen.sh, which will create configure if it's not already there.
* The second part of my change to hoist everything in the distcc/Craig Silverstein2008-04-121-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | directory up to the top level: delete the distcc directory (I already copied it all to the top level in my last commit). This requires changing all files that refer to distcc/FOO to refer directly to FOO instead. Mostly this is Makefile.in and setup.py, but there are a few other changes in scripts that have to hard-code paths, like configure.ac and pump.in. Also, several files changed their comments to refer to the new location, which isn't strictly necessary but I did anyway. The only other change I made was to get rid of the hack I had put in before, which renamed distcc to distcc-bin. I had needed to do that before, temporarily, because "distcc" was already the name of a directory, and couldn't also be the name of a binary. Now that the distcc directory is going away, I can rename the target back to distcc. Tested by running './autogen; ./configure; make maintainer-check'. I also ran 'make pump-check' and 'make distcheck'. To be reviewed (post-facto) by klarlund@google.com and fergus@google.com
* Merge configure.ac, distcc/configure.ac, andCraig Silverstein2008-04-111-8/+464
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | include_server/configure.ac into a single, top-level configure.ac script. Likewise with the three Makefile.in scripts. Now one config file at the top level controls everything. I had to rewrite quite a bit of code to account for the new level-up. In particular, I had to add "distcc/" in front of many things in order to refer to the same files I used to refer to when the configure.ac/Makefile.in text lived in the distcc/ directory rather than the top-level directory. Likewise (though to a lesser extent) for include_server. I also had to do a bit of merge work. Typically I'd leave the originally-distcc-directory content as close to the original as possible, and then try to put in the include_server directory stuff. Most of the top-level configure.ac and Makefile.in could go away, since they were glue before. I also could get rid of other top-level helper scripts that were used for the glue, such as version.sh. I also fixed a number of typos and other bugs: Makefile.in: 1) Removed obsolete CVS comment (we're 3 source-control systems past that now!) 2) distcc/Makefile.in was using top_builddir without importing it from the configure script. 3) Add zeroconf.h to HEADERS, which is needed for 'make dist'. I also added all the include_server files to 'make dist'. 4) "make dist" was passing 'h' ("no symlinks") to tar. This does not work with the include_server test-suite, which includes symlinks. I verified no other part of the distribution uses symlinks. Removed the h. 5) "make dist" was missing a lot of stuff (including almost all the include-server files). Updated it to get it all now. Likewise, updated "make clean" and its cousins to be more precise. Also made "make distcheck" more careful in checking that kind of thing. 6) Declared more phony targets .PHONY. 7) The include-server build commands do a lot of 'cd'-ing (since setup.py requires it), and then using make variables that might store relative directory paths. I now go through some hoops to make those directory paths absolute before the cd. 8) "make pump-check" was not setting the path, so it was using the installed distcc instead of the local one in the client. Fixed that, and added a new target, "make pump-installcheck", to use the installed distcc instead (parallel to the maintainer-check and maintainer-installcheck targets). configure.ac: 1) popt test was using $srcdir rather than required ${srcdir}, and thus was always getting the empty string. (Luckily, srcdir is usually ".", and the empty string is usually equivalent.) Likewise when setting CPPFLAGS, which again didn't matter because it turns out the relevant code was redundant with what autoconf already does automatically. 2) A merge error: apparently the avahi check was added twice. Get rid of the second one. 3) Was using obsolete AC_OUTPUT format. Use AC_CONFIG_FILES instead. 4) Added pkg.m4 to the m4/ directory. Before it only lived in autoconf.m4. But my system, at least, doesn't have it. 5) include-server requires python2.4, so remove checks for earlier pythons. autogen.sh: 1) Added aclocal call. I think it was a bug that it was left out before. pump.in: 1) Fixed it to notice when it can't find the .so file it needs. I also modified INSTALL to point to the new file locations, and the new instructions to run them (eg no more run_all_autoconf.sh). Despite all these bugfixes, I made the minimal changes possible to get things to work. I marked with "TODO" further improvements I'd like to make later. One particular TODO is that I had to rename the "distcc" target -- the main executable -- because it conflicts with the existing distcc directory. This is a temporary breakage which will be fixed in the next submit after this one, where I move the subdirs under distcc to the top level, getting rid of the artificial extra directory introduced. Tested by running 'make maintainer-check', 'make distcheck', and 'make pump-check' on my local machine, which passed. I've not tested all the various configurations and options (including using avahi, using the library popt library, building without python, etc). I've also not tried 'make benchmark'. Reviewed by klarlund@google.com and fergus@google.com
* Initial submission @6805748, not fully baked yet.klarlund2008-03-281-0/+11