0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-01 17:48:56 +02:00
Commit graph

171 commits

Author SHA1 Message Date
Jason Volk 15625db9a9 configure.ac: Update warning suppressions; reasoning/commentaries. 2017-11-30 11:23:39 -08:00
Jason Volk dc03f91022 configure.ac: *sigh* have to bump to c++17 for now, but with an SD-6 of 201411. 2017-10-15 21:40:48 -07:00
Jason Volk 2d90965816 configure.ac: Various cleanup; Add more warnings; Add optimization flags for testing. 2017-10-11 18:18:19 -07:00
Jason Volk 75648c7397 configure.ac: Add an RB_DEBUG_LEVEL which will always be defined; 0 when RB_DEBUG is not defined. 2017-10-11 18:18:19 -07:00
Jason Volk a8f9b3b847 configure.ac: Minor cleanup. 2017-10-03 04:27:13 -07:00
Jason Volk 4a6b3f5fcc Add support for libsodium (NaCl) cryptography. 2017-10-03 04:27:10 -07:00
Jason Volk 6e6d92a6ed configure.ac: various cleanup; boost vers; chkp; 2017-10-03 04:17:10 -07:00
Jason Volk c47be3008a ircd::ctx: Add a shared_mutex. 2017-10-03 04:17:09 -07:00
Jason Volk b3a1c42c42 configure.ac: Configure -Wstack-usage for GCC. 2017-09-24 18:16:42 -07:00
Jason Volk a0aeb2de2d configure.ac/Makefile: Add debug conditionals. 2017-09-24 18:16:34 -07:00
Jason Volk cb0878999b configure.ac: Remove sqlite support. 2017-09-24 18:16:32 -07:00
Jason Volk 80f1d30505 configure.ac: Bump boost min version to 1.62 for now. 2017-09-08 03:47:52 -07:00
Jason Volk fd3ae151b9 configure.ac: Send boost version to the tools build script. 2017-09-08 03:47:51 -07:00
Jason Volk 380d988e97 configure: Fix erroneous space near BOOST_LDFLAGS. 2017-08-23 15:52:15 -06:00
Jason Volk 48148c640c ircd: Add std::random subsystem and utils. 2017-08-23 15:52:15 -06:00
Jason Volk 5657878cd5 configure.ac: Boost related modifications in build system. 2017-08-23 15:29:34 -06:00
Jason Volk 4d4a56fe9c ircd::js: Upgrade SpiderMonkey to esr52 from esr45. 2017-08-23 15:25:22 -06:00
Jason Volk 7df3f6b5e6 configure.ac: Remove Bison/YACC checks. 2017-08-23 15:19:35 -06:00
Jason Volk bcbf701f5e fixup! configure.ac: Add -ffriend-injection to CXXFLAGS. 2017-03-20 04:31:14 -07:00
Jason Volk 065395d274 configure.ac: Remove legacy function checks. 2017-03-10 18:18:12 -08:00
Jason Volk b592b69b86 What is the Matrix? Control. 2017-03-10 17:51:18 -08:00
Jason Volk 8895bb57c3 configure.ac: Fix arguments to tools/buildjs. 2016-11-25 19:23:48 -08:00
Jason Volk f54c4215b4 ircd::ctx: Add queue: amalgam of a standard queue container with a dock. 2016-11-13 16:32:42 -08:00
Jason Volk cf71fd5c5e configure.ac: Place linkages for -lpthread -latomic. 2016-11-13 16:29:45 -08:00
Jason Volk b289c63b99 ircd::js: Improve the exception translation. 2016-11-13 16:29:45 -08:00
Jason Volk dffb39f8cc ircd::js: Add string utf conversions; improve string related. 2016-11-13 16:29:44 -08:00
Jason Volk 95068c7d06 Introduce Mozilla SpiderMonkey. 2016-10-25 01:55:50 -07:00
Jason Volk 36d8f3384b fixup! ircd::db: Add database interface. Support RocksDB. 2016-10-11 03:30:11 -07:00
Jason Volk 4bf52e93b3 configure.ac: -Wformat-security on GCC only. 2016-09-27 17:29:06 -07:00
Jason Volk 5df4bf6da2 ircd::db: Add database interface. Support RocksDB. 2016-09-27 02:20:42 -07:00
Jason Volk 6115671122 configure.ac: Boost.DLL is new in 1.61. 2016-09-26 16:06:56 -07:00
Jason Volk 5b607b5b1f configure.ac: Add __int128 support. 2016-09-21 16:29:28 -07:00
Jason Volk 249ba02faa Introduce userspace contexts. 2016-09-09 16:17:36 -07:00
Jason Volk 9e027b2212 configure.ac: Clarify specific spirit headers (avoid deprecation for spirit.hpp) 2016-09-09 16:17:03 -07:00
Jason Volk 1df1545a3c configure.ac: Support boost::spirit parser framework. 2016-09-09 16:17:02 -07:00
Jason Volk 12c836dc6e Rip out libltdl. 2016-09-09 16:17:02 -07:00
Jason Volk 5aeeb73e20 ircd: Introduce ASIO; stub for signal handling and console UI. 2016-09-09 16:17:02 -07:00
Jason Volk 9d0a959bb5 MAPI IV. This iteration leverages the C++11 standardized RTTI.
* Simplifies the export declarations for module developers. While
MAPI III utilized a flexible key-value vector to eliminate positional
arguments in a header initializer, now the developer simply makes
a list of pointers to what they want to export for injection into
IRCd. Example:

mapi::header IRCD_MODULE
{
	"mymod",
	"My module adds a command, a hook, and a CLICAP",
	&my_cmdtab,
	&some_hook,
	&clicaptab
};

* Distributes the handlers for items passed to the above vector.
Anyone can add a type-handler to the module system from anywhere in IRCd
(and other modules?) When your type is encountered a handler is called
providing the symbol name to read out of the module. Example in parser.cc:

mods::add_loader<Message>([]
(mod &loading, const std::string &symbol)
{
	auto &msg(get<Message>(loading, symbol));
	add_command(msg.name, msg);
});
2016-09-09 16:17:01 -07:00
Jason Volk 638db81e09 configure.ac: Support boost::filesystem / boost::dll. 2016-09-09 16:17:01 -07:00
Jason Volk 3ebde4ab50 Convert umodes to mode_lease mechanism. 2016-09-09 16:17:01 -07:00
Jason Volk b5d4fef865 configure.ac: -Woverloaded-virtual -Wnon-virtual-dtor -Wnoexcept 2016-09-09 16:17:00 -07:00
Jason Volk f7dc872592 configure.ac: Test targets for experimental std::string_view. 2016-08-25 02:07:11 -07:00
Jason Volk 096f7b9ff7 clang: -Wno-mismatched-tags 2016-08-20 19:30:33 -07:00
Jason Volk d9abfc3955 Include time and iomanip standard library headers. 2016-08-20 19:30:33 -07:00
Jason Volk a789f0d0ed Readd missing compile-time information as a CPPDEFINE. 2016-08-20 19:30:33 -07:00
Jason Volk 61b517ca3c Precompile and remove most include directives. Notes:
* To benefit from the precompiled-header (PCH) it MUST provide "the first C token."

Advantages:
Never worry about the include stack again. Remember, this means one less thing
for random module developers, community people learning C++, and new developers
to deal with. It should reduce the learning curve and barrier for participation.

Disadvantages:
Makes overall compilation a bit slower, especially without any additional
work to improve it again. There are several opportunities, places where the
PCH is probably being ignored, etc that can be addressed.
2016-08-20 19:30:33 -07:00
Jason Volk 7d3e1e49a5 configure.ac: Fix CPPDEFINE error and improve boost check.
Require at least 1.56 for now... Testing of older versions is
needed once librb is replaced and we know what's needed.
2016-08-19 22:39:34 -07:00
Jason Volk 0e62b5a91a Add PIC/PCH condition in stdinc.h. 2016-08-13 02:43:41 -07:00
Jason Volk 1ffc492c7f Don't care about missing declarations. 2016-08-13 02:43:41 -07:00
William Pitcock 34a33a07d0 configure: fix ENABLE_FHS_PATHS being enabled when it shouldn't 2016-07-30 21:25:34 -05:00