summaryrefslogtreecommitdiff
path: root/configure
AgeCommit message (Collapse)Author
2014-12-18Fix some oversights from #895.Peter Powell
- 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-07Move common code to make::common from make::utilities.Peter Powell
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-07Implement support for distribution specific version labels.Peter Powell
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-07Improve build system compiler detection.Peter Powell
- 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-07Improve configure cache file handling.Peter Powell
- 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-07Miscellaneous improvements to configure.Peter Powell
- 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-07Add Perl module for console related code.Peter Powell
- 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-05-23Replace the configure templating system with something better.Peter Powell
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-04-11Remove various broken/useless features from the build system.Peter Powell
- 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-07Merge insp20Attila Molnar
2014-04-04Fix typos and update text in the configure scriptAttila Molnar
Some of these were picked from #448
2014-02-08Replace SocketEngine::GetName() with INSPIRCD_SOCKETENGINE_NAME defineAttila Molnar
2013-12-15Fix $config{UID} being set incorrectlyPeter Powell
Fixes issue #697 reported by @Nowaker
2013-12-13Add a warning that the user is using a development version.Peter Powell
2013-08-22Fix a few problemsattilamolnar
- 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-18Clean up and move various subroutines.Peter Powell
- 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-16Clean up the build system properties and related code.Peter Powell
- Deduplicate getcompilerflags, getdependancies, getlinkerflags. - Remove $NoPedantic (add -Wno-pedantic to $CompileFlags instead). - Remove --enable-freebsd-ports-openssl and all related code (this will be replaced with --no-pkg-config=[name] in the future). - Remove some unused build system properties. - Remove support for caching third party include and library paths (can cause unexpected problems when they change).
2013-08-04Refactor duplicate test code into a run_test subroutine.Peter Powell
2013-07-29Remove a ton of duplicate and obsolete code from configure.Peter Powell
- Add the data and log paths to dumphash. - Always exit with EXIT_FAILURE on error. - Always replace the old config.h with our new one. - Clean up the ./configure --help message slightly. - Install dhparams.pem into the conf directory on GnuTLS as well as OpenSSL. - Only show the users InspIRCd Git revision when building from Git. - Remove a check for MinGW (we have proper Windows builds). - Remove a check for FreeBSD 4 (released in 2000). - Remove a ton of pointless tab-indented comments. - Remove a ton of duplicate or unused variables. - Remove the check for stdint.h (always available on TR1 compilers). - Remove the $writeheader argument from writefiles (always 1). - Remove the following %config options: - DESTINATION (not used, always set to BASE). - EXECUTABLE (always set to inspircd). - OSNAME (duplicate of SYSTEM). - Remove support for checking whether -extra modules are up to date (if the user is installing they won't have any -extra modules installed). - Remove SSL generation messages (genssl provides these). - Replace inappropriate uses of printf with print. - Replace is_dir with -d from the Perl stdlib. - Replace resolve_directory with rel2abs from the Perl stdlib. - Rewrite getrevision to be more compact, cache the revision and return 'release' on non-Git builds. - Use consistent messages for all tests. - Use tput to clear the screen in a portable way.
2013-07-16Use the preprocessor to check for TCP deferring support.Peter Powell
2013-07-07Replace arguments for toggling socketengines with --socketengine.Peter Powell
2013-07-05Expose compiler name to make.Peter Powell
- Convert ICC detection to use new variable.
2013-07-05Rename configuration variable to CXX to match everything else.Peter Powell
2013-07-05Correctly detect the compiler version and whether it is acceptable.Peter Powell
2013-07-05Automatically detect the compiler which the user has installed.Peter Powell
2013-07-05Purge --with-cc in favour of the CXX environment variable.Peter Powell
2013-07-04Add IFNEQ Makefile template macro.Peter Powell
- Use template macro for ICC check. - Don't link against pthread on Darwin.
2013-07-04Fix some missing newlines in the config header generator.Peter Powell
2013-07-04Fix $ModDep failing to find application-wide include files.Peter Powell
2013-06-06Remove hardcoded MAXBUF constant.Peter Powell
2013-06-06Start to replace MAXBUF with <limits:maxline>.Peter Powell
2013-06-06Merge insp20attilamolnar
2013-06-05Report the full GnuTLS version in configureattilamolnar
Fix incorrect version being reported when the minor version is longer than one digit (2.10.x)
2013-06-03Added option for using TCP_DEFER_ACCEPT. Prevents the connection from being ↵Daniel Vassdal
handed over to the daemon before data is ready from the client.
2013-06-01Remove unused code from configure.Peter Powell
2013-05-16Improve feature detection in configure.Peter Powell
2013-04-12Tidy up source files:Peter Powell
- Use #pragma once instead of include guards. - Move header files in src/modules to include/modules. - Fixed various spacing issues.
2013-04-05Merge inspircd_{config,version}.h into a single header file.Peter Powell
2013-04-02Extract SSL generation to a tool which can be shipped by distros.Peter Powell
2013-01-28Use the preprocessor to detect whether hash_map is available.Peter Powell
2013-01-22Fix OpenSSL detection on distributions which modify the version number.Peter Powell
2012-11-15unhook --uid from --system in configure scriptSteven Van Acker
Specifying --uid allows the ircd to run as a specific user, while --system fixes the install directories to be spread all over the system. Specifying --uid shouldn't imply --system. This fix allows a uid to be set while not interfering with --prefix
2012-11-07Temporary fix for HASHMAP_DEPRECATED on clang.Peter Powell
2012-10-26Fix configure system loading cache file too late.Peter Powell
2012-10-04Replace hardcoded paths with configurable onesChrisTX
This patchset aims to ease the packaging of InspIRCd for a system-wide installation scenario. Changes in detail: configure: Add the options --log-path and --data-path m_ssl_gnutls, openssl: Change the hardcoded "conf/" to the existent CONFIG_PATH macro m_xline_db: Make the location of xline.db configurable. It will use --data-path as default value, but this can be changed using the configuration files.
2012-07-27Don't hard code the branch version.Peter Powell
2012-07-21Don't hardcode conf/inspircd.conf as the config file, allow the configure ↵attilamolnar
script to override it (configure asked for the path but the ircd used the hardcoded path regardless) Fixes #264 reported by @ampt
2012-07-05GnuTLS requires pkg-config as well.Peter Powell
2012-04-20Headers: update remaining scripts tooRobby-
2012-03-22Use `xcrun clang++` on OS X as the compilerKyle Fuller