383 Commits

Author SHA1 Message Date
Peter Powell
7da9057946 Fix "make -jX debug install" causing linker errors. 2015-07-29 23:46:33 +01:00
Attila Molnar
ec5529639d Merge pull request #1076 from SaberUK/insp20+kqueue
[2.0] Fix checking whether kqueue/stdint/strlcpy are available.
2015-07-23 01:07:53 +02:00
Richard Bradfield
79d1a436bb Replace deprecated tmpnam() call
From Perl 5.22 onwards, POSIX::tmpnam() has been deprecated (without the
usual 2 year deprecation cycle), using the File::Temp module instead
preserves compatibility while allowing compilation on 5.22 and later.
2015-07-22 01:18:03 +01:00
Peter Powell
0b4285abd1 Add missing copyright headers to test files. 2015-07-21 23:34:22 +01:00
Peter Powell
4c751dbbe8 Switch <stdint.h> test to use a test file too. 2015-07-21 23:30:54 +01:00
Peter Powell
e5cfa9c0c2 Switch strlcpy test to use a test file too. 2015-07-21 23:22:17 +01:00
Peter Powell
3fbba606c3 Fix checking whether kqueue is available.
It seems like the newer OS X versions don't put headers into the
system include directories. Switch to using a test file instead.
2015-07-21 23:22:09 +01:00
Attila Molnar
539abb9e93 Merge pull request #1063 from SaberUK/insp20+cert-warning
[2.0] Show a better warning when certtool/openssl are missing.
2015-06-26 00:00:25 +02:00
Peter Powell
0207736989 Log STDOUT and STDERR in the launchd script. 2015-06-24 23:06:11 +01:00
Peter Powell
4e3d7a6e30 Show a better warning when certtool/openssl are missing. 2015-06-15 21:30:27 +01:00
Peter Powell
2ad8a6791b Fix system-wide installation of the data and log directories.
The existing method works fine when building with the default
paths but breaks when you are doing a system-wide installation.
2015-06-14 19:39:15 +01:00
Peter Powell
cf94052d8f Fix modules with 2+ files not having their LinkerFlags parsed. 2015-06-03 14:59:08 +01:00
Attila Molnar
8ceae7ec0f Increase entries in valgrind stack traces to 30 (--num-callers) 2015-05-19 23:31:02 +02:00
Peter Powell
01dee272ca Remove run-cc.pl and all associated code.
As far as I can tell this only worked with older versions of GCC
and there is no value in fixing it as diagnostics have improved
since then and it makes errors hard to search for anyway.

This also shaves off an average of five seconds on each build on
my hardware. Neat!
2015-05-13 15:22:44 +01:00
Peter Powell
4b3e466c80 unit-cc: Remove workaround which existed for 2.0.x only. 2015-05-13 15:22:44 +01:00
Peter Powell
953ca72cfe unit-cc: Use the same preamble as other Perl tools. 2015-05-13 15:22:44 +01:00
Peter Powell
70faab99c8 calcdep: Unify coremod and module building code. 2015-05-13 15:22:43 +01:00
Peter Powell
f02e766924 calcdep: Clean up some unused/duplicate variables. 2015-05-13 15:22:43 +01:00
Peter Powell
32b789eec1 calcdep: Use the same preamble as other Perl tools. 2015-05-13 15:22:43 +01:00
Peter Powell
45c048241d calcdep: Remove a workaround for a very old version of BSD Make. 2015-05-13 15:22:43 +01:00
Attila Molnar
8f5efbc7aa Merge insp20 2015-04-20 17:40:12 +02:00
Peter Powell
aae283e1dd Convert the build system to Perl 5.10.
Thanks to Kross for the heads up on "use feature".
2015-03-25 19:01:33 +00:00
Peter Powell
8cae3800ef Fix building when VERBOSE is already set in the environment.
This is a workaround for now. In 2.2 we should prefix all of the
environment variables with INSPIRCD_ to avoid collisions.
2015-03-09 15:26:40 +00:00
Peter Powell
cfff1874a8 Change server name in ./configure --help to use the alias.
Requested by @attilamolnar.
2015-03-06 16:37:52 +00:00
Peter Powell
88bfcabe02 Create installation directories with make install not configure.
This fixes system-wide installations requiring root in order to
create directories.
2015-03-06 16:13:11 +00:00
Peter Powell
ee3b1ba801 Fix oversight which caused problems with Clang on OSX. 2015-02-20 19:16:14 +00:00
Attila Molnar
2d97be1d32 Change all occurrences of Inspire to InspIRCd 2015-02-20 00:57:10 +01:00
Peter Powell
755c259b63 Remove a workaround for a compiler which is no longer supported. 2015-02-18 16:00:39 +00:00
Peter Powell
100048eb41 Add the <type_traits> header to the compiler test file. 2015-02-18 15:46:13 +00:00
Peter Powell
4e9af81504 Improve compiler detection in configure.
- Split the detection and compatibility checks into two different
  steps (previously it was confusing as it would say the compiler
  was not available when it was really not compatible).
- Fix a minor bug where compilers detected using xcrun on Darwin
  would not have xcrun returned as part of the compiler name from
  find_compiler.
2015-02-18 15:16:40 +00:00
Steven Van Acker
59ae74f80c Making init-script exit codes compliant with LSB 4.1 2015-02-05 19:01:35 +01:00
Attila Molnar
365e2b45f8 Disable RTTI in release builds (compile with -fno-rtti) 2015-01-22 12:19:01 +01:00
Peter Powell
bdaccea960 Fix some oversights from #895.
- Always write the configure cache file as it is needed for updating
  the makefile when --update is called.
- List the modules which have been enabled in the "configuration
  complete" message.
- Silence some harmless warnings about installing PEM files which
  don't exist.
2014-12-18 16:43:58 +00:00
Peter Powell
440f34023a Fix builds on OpenBSD spamming the console with warnings. 2014-12-07 22:36:43 +00:00
Peter Powell
7404ba8b66 Move common code to make::common from make::utilities.
The other code in that file will be removed very soon so it has
been left alone to avoid merge conflicts.

This will help prevent insp20 merge conflicts in the future.
2014-12-07 22:36:43 +00:00
Peter Powell
541a66de7a Implement support for distribution specific version labels.
This will help us determine whether a version has been packaged by
a downstream distribution who quite often make arbitrary changes
which are a pain to provide support for.

Debian, we're looking at you.
2014-12-07 22:36:42 +00:00
Peter Powell
2adb94db30 Improve build system compiler detection.
- Check the CXX environment variable inside find_compiler instead
  of doing it separately.
- Use a test file instead of checking for version output. This
  ensures we are using a working compiler.
- Pipe the output through run_test which makes debugging problems
  considerably easier.
- Detect Xcode versions of Clang properly by returning the LLVM
  version number instead of the Xcode one.
2014-12-07 22:36:42 +00:00
Peter Powell
133b110534 Improve configure cache file handling.
- Add a version number to the configure cache file.
- Disable configure cache file in non-interactive mode.
- Rename configure cache file to .configure.cache to avoid 2.0 files.
- Use run_test to produce the "reading .configure.cache" message.
2014-12-07 22:36:42 +00:00
Peter Powell
500a0524d9 Miscellaneous improvements to configure.
- Clean up various minor sections of the code.
- Remove OpenSSL and GnuTLS detection plumbing.
  - This will soon be the job of modulemanager.
  - This did not work in non-interactive mode unlike --enable-extras.
- Rework runas user handling.
  - Add the --gid configure option.
  - Accept either an id or a name in --gid and --uid.
- Rework the question flow in interactive mode.
  - User is no longer asked detailed questions unless they want them.
  - Socket engine questions have been removed.
- Automatically enable non-interactive mode if STDIN or STDOUT are not
  a tty.
2014-12-07 22:36:42 +00:00
Peter Powell
11f4d02e70 Add Perl module for console related code.
- Move prompt_* methods to this module.
- Add methods for printing errors and warnings easily.
- Add colour code helpers and switch all code to use them.
2014-12-07 22:36:42 +00:00
Dan Parsons
293c9c66b7 Updated inspircd init script template to make it chkconfig compatible.
Backported from master, PR #901
2014-11-12 22:44:57 +01:00
Attila Molnar
3a3ff94967 Merge insp20 2014-10-27 15:26:20 +01:00
Peter Powell
a49fd4cba6 Use gnutls_rnd instead of gcry_randomize on newer GnuTLS versions.
This is a modified version of 690c372. Fixes #905.
2014-10-25 02:57:51 +01:00
Peter Powell
d04979df09 Fix some small bugs in the makefile template.
- GCC in C++ mode should be called g++ not gcc.
- ICC in C++ mode should be called icpc not icc.
2014-10-24 23:34:41 +01:00
Peter Powell
6f65b7c6ca Add a workaround for compiling modules with Windows line endings. 2014-10-13 22:04:47 +01:00
Dan Parsons
84cfcdaf9e Updated inspircd init script template to make it chkconfig compatible. 2014-08-31 13:05:21 +02:00
Peter Powell
8258232b7b Fix unit-cc not loading configure cache when building files. 2014-08-27 22:01:54 +01:00
Peter Powell
4288b2a599 Add a work around for trampling over PKG_CONFIG_PATH.
The extend_pkg_path method will be removed in 2.2 as it
causes problems with non-standard pkg-config paths. This
commit adds a workaround until that happens.
2014-08-19 15:27:19 +01:00
Attila Molnar
f62654a685 Merge insp20 2014-07-25 12:05:40 +02:00
Peter Powell
f78c1c277a Add man pages. 2014-06-28 18:09:06 +02:00