687 Commits

Author SHA1 Message Date
Peter Powell
29f4254029 Fix configure not failing when invalid flags are passed to it. 2019-05-12 11:51:05 +01:00
Peter Powell
2cc524a1c6 Add a configure flag for disabling automatically enabling extras.
Requested by @niacat.
2019-05-12 11:50:57 +01:00
Peter Powell
044fa99968 Fix --distribution-label erroneously requiring --development.
Reported by @ensra.
2019-05-03 15:17:15 +01:00
Robby
e57d1b19ff Textual improvements and fixes such as typos, casing, etc. (#1612) 2019-04-28 09:14:21 +01:00
Peter Powell
14e1d1f844 Replace the geoip module with geo_maxmind, geoban, and geoclass.
MaxMind have EOL'd the library that the geoip module uses and have
replaced it with libmaxminddb.

The geoip module has been split into geo_maxmind which provides
geolocation data, geoban which provides location-based channel
bans, and geoclass which is used to filter a user into a connect
class based on location.
2019-04-15 19:08:22 +01:00
Robby
ac0d5abaac Update most URLs to use HTTPS and fix some dead links. 2019-03-14 11:02:24 +00:00
Peter Powell
88d5659922 Tell people to run make install instead of just make. 2019-02-06 23:15:33 +00:00
Peter Powell
f1c3833663 Don't clear the screen when running in interactive mode.
This hides potentially useful information.
2019-01-29 21:18:18 +00:00
Peter Powell
59ddf1a456 Improve setting the gid/uid which will own files.
- Consistently set the gid/uid for all directories and files.
- Replace the obnoxious warning about root on `make install` with
  a friendlier warning whilst running configure.
- Always install the inspircd executable and modules.
2019-01-29 21:18:18 +00:00
Peter Powell
f4041a13c3 Release v3.0.0 release candidate 1. 2019-01-07 22:41:54 +00:00
Peter Powell
0fc595caac Enable as many extra modules as possible when running configure. 2018-10-27 04:27:16 +01:00
Peter Powell
0e397ff721 Tell the user to check out the latest tag rather than the branch.
When the InspIRCd 3.x branch forks this will tell the user to go
back to the latest tag on the branch.
2018-10-26 02:57:13 +01:00
Peter Powell
ec6bdd1ae9 Use arc4random_buf() instead of random() when available. 2018-07-20 11:48:22 +01:00
Peter Powell
27e92622b5 Improve the message shown to the admin when generating SSL certs.
Self-signed SSL certificates are intended for testing purposes. A
production server should be using a CA-signed certificate instead.
2018-03-01 19:43:36 +00:00
Peter Powell
d4414f5491 Remove support for the Solaris IOCP socket engine.
After discussing this with Adam we have decided that there is very
little point in keeping this now that Solaris has been killed. Any
legacy Solaris users will have to make do with poll.

This change does not affect users of Solaris forks like Illumos as
they have support for epoll which will have already been selected
over Solaris IOCP by configure.
2017-10-22 19:42:11 +01:00
emerson
b89fbe9e02 Fix SCRIPT_DIR directory change
SCRIPT_DIR didn't automatically change directory if the user specified a
non-default directory
2017-09-25 14:24:08 -04:00
Peter Powell
8270aca2ee Allow the script directory to be set in interactive mode. 2017-09-24 10:36:20 +01:00
Peter Powell
b8babf2c43 Move the init scripts out of the prefix into the new script dir.
The previous directory was okay for home directory installs but
was problematic for system wide installs.
2017-09-21 20:49:49 +01:00
Attila Molnar
e9d645cd30 Merge pull request #1338 from SaberUK/master+openvz
Warn the user about clock drifting when running on OpenVZ.
2017-07-09 21:16:52 +02:00
Peter Powell
7cc96c9216 Warn the user about clock drifting when running on OpenVZ. 2017-05-20 15:13:18 +01:00
Peter Powell
5e188db59d Tidy up the socket engine selection code. 2017-05-19 17:35:16 +01:00
Peter Powell
64273cc51b Rename read_configure_cache to read_config_file and move to common. 2017-03-25 00:54:21 +00:00
Attila Molnar
b16bc08b2c Merge pull request #1273 from SaberUK/master+bs
Fix the clock_gettime() test on macOS Sierra
2016-12-29 16:05:19 +01:00
Peter Powell
032a1f8567 Add interactive-mode support for setting the compiler binary. 2016-12-26 05:57:34 +00:00
Peter Powell
27facf2e0c Fix the clock_gettime() test on macOS Sierra.
macOS now supports clock_gettime() but it is part of libSystem
rather than librt which does not exist on macOS.
2016-12-26 05:17:41 +00:00
Peter Powell
3ad1a0bad2 Fix the distribution label not showing up since b8d85c6251. 2016-11-18 18:13:47 +00:00
Peter Powell
1d45a7264c Update build system for the removal of . from @INC. 2016-11-08 09:31:56 +00:00
Peter Powell
806e57433a Rewrite the build system directive parser. 2016-09-16 04:23:56 +01:00
Peter Powell
b8d85c6251 Update stuff for the new versioning system. 2016-09-02 22:13:22 +02:00
Attila Molnar
c050eb2d45 Add mbedTLS SSL module 2016-06-15 18:23:04 +02:00
Peter Powell
8f9ae4c55e Fix the temporary fix for finding SSL libraries. 2016-02-19 20:01:13 +00: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
214c6bc525 Fix dodgy indentation in configure. 2015-03-08 22:04:32 +00:00
Peter Powell
1dc79dcdff Add development version checks to non-interactive mode. 2015-03-06 16:13:11 +00: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
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
Peter Powell
e6d245a3e8 Replace the configure templating system with something better.
A large amount of this code can be removed when buildtool is done
as we will not need to worry about the differences between BSD and
GNU Make.
2014-05-23 14:13:51 +02:00
Peter Powell
2803ae5d75 Remove various broken/useless features from the build system.
- Removed support for changing the build directory using configure.
  This can still be set using make BUILDPATH=foo.
- Removed support for SPLIT_CC builds. This is not documented
  anywhere and is quite useless as it doesn't work.
- Remove STARTSCRIPT from configure; always install the perl
  helper.
2014-04-11 15:38:17 +02:00
Attila Molnar
f71e6bf9cb Merge insp20 2014-04-07 13:40:51 +02:00
Attila Molnar
957676efd8 Fix typos and update text in the configure script
Some of these were picked from #448
2014-04-04 18:17:00 +02:00
Attila Molnar
ed6176383e Replace SocketEngine::GetName() with INSPIRCD_SOCKETENGINE_NAME define 2014-02-08 13:16:31 +01:00
Peter Powell
f12c97e3ff Fix $config{UID} being set incorrectly
Fixes issue #697 reported by @Nowaker
2013-12-15 17:02:15 +01:00
Peter Powell
4f79296bc0 Add a warning that the user is using a development version. 2013-12-13 10:39:22 +00:00
attilamolnar
39d34b6042 Fix a few problems
- Fix configuration issue on systems without both GnuTLS and OpenSSL. (@SaberUK)
- Do not set Membership::modes in ForceJoin() incorrectly to privs
- Fix crash when spanningtree detects a configuration error on load
2013-08-22 13:41:11 +02:00
Peter Powell
3070548cee Clean up and move various subroutines.
- Fix indentation of get_compiler_info and clean up slightly.
- Move module_installed to make::utilities.
- Remove promptnumeric (unused).
- Rename clean to cmd_clean and rewrite.
- Rename dir_check to prompt_bool and rewrite.
- Rename dumphash to dump_hash.
- Rename getcache to read_configure_cache and rewrite.
- Rename getrevision to get_revision.
- Rename makecache to write_configure_cache and rewrite.
- Rename promptstring_s to prompt_string and rewrite.
- Rename showhelp to cmd_help and rewrite.
- Rename update to cmd_update and rewrite.
- Rename yesno to prompt_bool and rewrite.
- Replace getmodules with a <src/modules/m_*.cpp> glob.
2013-08-18 11:41:43 +01:00