summaryrefslogtreecommitdiff
path: root/make/utilities.pm
AgeCommit message (Collapse)Author
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-07Merge insp20Attila Molnar
2014-02-28Merge pull request #784 from ShutterQuick/patch-1Attila Molnar
Fix build problem on Solaris
2014-02-27Fix build problem on SolarisShutterQuick
-rpath only takes one dash Fixes the Solaris build \o/ ''' <fraggeln> SaberUK: http://m.theo.nu/jenkins/job/InspIRCd-2.0/435/label=solaris/console <-- <fraggeln> do you have any clue on why? <@Shutter> Hmm. Where did that extra - come from. <fraggeln> Shutter: no idea :) [...] <fraggeln> Shutter: sub make_rpath($;$) <-- in make/utilities.pm <fraggeln> thats where that extra - is'''
2014-02-27Fix Solaris not being able to find modules without pkg-config.Peter Powell
2013-12-16Add a tool for running test builds.Peter Powell
2013-11-18Use gnutls_rnd instead of gcry_randomize on newer GnuTLS versions.Peter Powell
Also, fix a bug where eval() caused compile errors.
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-07-04Remove detection of deprecated backticks which was added in 1.1b9.Peter Powell
2012-04-20Headers: update remaining scripts tooRobby-
2010-03-11Don't implement --atleast-version ourselves, incorrectlydanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12622 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-11...because every now and again, i have to do a massive commit.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Run a dependency check on modules so missing dependencies are detected ↵danieldg
during configure git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11566 e03df62e-2008-0410-955e-edbf42e46eb7
2009-06-26Make pkg-config failure error clearerdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11417 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-15Update all wiki links to point to the new wiki. This was done automatically ↵psychon
with the following command, only .Makefile.inc got some indent fixups by hand. for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-11Fix error when configuring with a custom directory: ↵brain
http://www.inspircd.org/forum/showthread.php?t=5419 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11085 e03df62e-2008-0410-955e-edbf42e46eb7
2009-01-24fix typopeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10995 e03df62e-2008-0410-955e-edbf42e46eb7
2009-01-04Friendlify error message here toobrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10948 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-27Extra support for freebsd openssl, allow user to pick between ports and base ↵brain
version if they have both, default to ports version in interactive, require a flag in ./configure git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9591 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-27More stuff so that freebsd users can still use the ports version of openssl ↵brain
if they want git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9590 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-27Fix this up a bit nicerbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9588 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-27and make it work right...brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9587 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-27Add some stuff from the freebsd port based on ideas by Matthew Seaman which ↵brain
allow inspircd to use the base version of openssl on freebsd git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9586 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-13Patch provided by danieldg for fixing 3-figure versions in configurebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8926 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-27Revert tmpfile cleanup from r8761, also make configure's perl version check ↵aquanight
happen during compilation phase so that people don't get millions of useless errors. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8762 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-27Some configure cleanups: like using perl functions/modules instead of ↵aquanight
system() (symlink, clear, mv, mkdir -p), clean up tmpfile for eval(), use \e instead of \033, and use a heredoc for the big banner on starting configure git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8761 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-27Make sure that if an exec() macro fails its picked up before build timebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8757 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-17Aquanight's configure strict/fatal warnings patchbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8731 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-03Add --disable-rpath. Probably wont backport this for the time beingbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8475 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-25Add 'require 5.8.0' to the very top of every module to make the failure ↵brain
message when you run an ancient perl a bit more descriptive. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7820 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-17more headers.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7468 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-17Added the execruntime() function for Compile/Linker flags - executes shell ↵special
commands at compile time rather than during configure git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7458 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵peavey
auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-07Add licensing headers to files which are missing them and make sure they are ↵brain
up to date in others (e.g. point at the developer page on the wiki not list names) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6759 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-01New patch from BuildSmart for OS X support, not broken like the last onew00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6473 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-21Add check for openssl >= 0.9.7, and fix for if the library cant be found at allbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6424 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-21Fix broken function vcheck() that checks one dot-delimited version string ↵brain
against another git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6422 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-21Add extra macro pkgconfversion("packagename", "version");brain
dies if the version you specify isnt installed. Also added to m_sqlite3: pkgconfversion("sqlite3", "3.3") Note: this will die at configuration time, not compilation time. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6421 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-21Fix library detection flags (bad define put into the ldflags)brain
Change default flags from "-g" to "-O2 -g1". This takes us down from a build size of 350mb+ to 35mb, and still gives us the ability to backtrace! :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6419 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20Fix the commandline stuff up to actually work!brain
Also, fix 'locate' detection of files when pkg-config cant find them. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6415 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20If we're not in interactive mode, then we dont prompt interactively for the ↵brain
value. We look for the configuration item in the commandline, --$package-includes="" or --$package-libs="" and use that. If its not defined, we die() with a message to specify the path using that commandline item. This also applies to ./configure -modupdate. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6414 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20Additional feature, pass -DVERSION_PKGCONFMODNAME="xxx" to modules that use ↵brain
the pkgconfig detection macros (the modules can use this if they like) Extra tweak/fix: Allow for configure cache values containing the = symbol git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6413 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20And fix it so it worksbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6412 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20Better detectionbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6411 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20Add caching of all detected values :)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6410 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20Proritise cached value above a searchbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6409 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-20Fixes to make ./configure prompt for libs if all else fails (discussed ↵brain
earlier with w00t). The values prompted for are cached, so if you specify them then ./configure -update wont prompt again for them git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6408 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-16Add O_NOFOLLOW to file write call, which prevents following of symlinks ↵brain
making our temp file writing completely secure git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6358 e03df62e-2008-0410-955e-edbf42e46eb7