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

296 commits

Author SHA1 Message Date
Jason Volk 910dafbb85 configure: Improve profile build related. 2020-11-27 17:29:54 -08:00
Jason Volk 0f851d1d98 ircd: Use thin mode for LTO.
matrix: Use thin mode for LTO.
2020-11-27 17:29:28 -08:00
Jason Volk 1d97263066 ircd::proc: Add basic subprocess interface; ios integration. 2020-10-20 23:20:41 -07:00
Jason Volk f6bc11b76a ircd::vg: Add stack register/deregister to interface.
ircd::vg: Use extern const bool for active(); minor reorg.
2020-10-16 14:32:06 -07:00
Jason Volk 841e7dc35b ircd::db: Split db::database into unit. 2020-10-11 11:42:48 -07:00
Jason Volk af82529e13 configure: Support OpenCL.
configure: Support MesaOpenCL.
2020-10-07 20:46:02 -07:00
Jason Volk 25cd479a7c configure: Fix conditions for compiling libicu dependent units. (fixes #165) 2020-09-23 17:40:53 -07:00
Jason Volk 5ac0457d55 configure: Support libzstd related in build. 2020-09-21 16:22:23 -07:00
Jason Volk a02bd474d7 Fix EXTRA_CXXFLAGS append order regression. 2020-09-13 14:32:47 -07:00
Jason Volk f5dd9debb6 ircd: Move magick support to core lib. (#109) 2020-08-24 03:04:05 -07:00
Jason Volk 9925fc919d ircd: Adjust object order based on running theory of dependencies. 2020-08-24 03:03:59 -07:00
Jason Volk f3f441ac19 ircd::b64: Add parallel SIMD base64 decoder. 2020-08-11 15:50:52 -07:00
Jason Volk 7ff89fbd17 ircd: Split base64 and base58 into separate namespaces. 2020-08-10 04:56:28 -07:00
Jason Volk 2f6f2af06f Reserve EXTRA_* flag sets for user.
configure: Move unit configuration section above application settings.

configure: -fasm-blocks not yet useful without GCC parity.
2020-07-30 06:38:51 -07:00
Jason Volk 31bd80a6d1 Consolidate application of -flax-vector-conversions. 2020-07-10 20:12:33 -07:00
Jason Volk b32d2f07f5 Relax vector conversions in translation units; enforce in headers. 2020-07-06 17:31:04 -07:00
Jason Volk b94c5d370f ircd::utf: Move definitions out-of-line for now. 2020-06-27 18:10:36 -07:00
Jason Volk 526271e8cd ircd::simd: Add preliminary debug print utils. 2020-06-24 11:00:11 -07:00
Jason Volk da1f3e0d1c ircd: Remove legacy locale header / unit. 2020-06-20 05:41:14 -07:00
Jason Volk daa49dde51 ircd: Add icu support if available. 2020-06-19 03:04:55 -07:00
Jason Volk 4371d803a4 ircd: Move fpe out of util. 2020-06-17 23:01:23 -07:00
Jason Volk eb00134100 ircd::util: Move syscall() templates out of util; minor reorg includes.
ircd::sys: Add abstract sysfs tool and template from fs::dev.
2020-06-11 09:49:33 -07:00
Jason Volk 4049ea0127 ircd: Use -isystem for some rocksdb includes triggering warnings on GCC. 2020-06-09 05:14:43 -07:00
Jason Volk 4d98f8fa8d ircd::fs: Split fs::dev definitions into unit. 2020-06-07 01:51:19 -07:00
Jason Volk 774cd6c7c2 ircd::db: Split allocator related into unit. 2020-06-04 15:38:38 -07:00
Jason Volk 6d14758a8a ircd: Elide static destructor emissions w/ clang. 2020-05-22 16:37:05 -07:00
Jason Volk 109c30a76c ircd: Apply devirtualization optimizations for clang.
matrix: Apply devirtualization optimizations for clang.
2020-05-11 01:58:25 -07:00
Jason Volk 72ae3073d3 ircd::ctx::posix: Wrap pthread_timedjoin_np(). 2020-05-05 20:57:59 -07:00
Jason Volk 883a230830 ircd::ctx::posix: Wrap pthread_setname_np(). 2020-05-05 19:58:37 -07:00
Jason Volk 36d9dbf0af ircd::ctx::posix: Add linker hooks for specific pthread functions. 2020-05-04 16:09:39 -07:00
Jason Volk b3dbf0cd01 ircd::ctx: Start an interpositionable posix thread interface. 2020-05-04 16:09:39 -07:00
Jason Volk 9d7c1096e8 ircd::db: Consolidate rocksdb interpositions into db_fixes unit; minor cleanup. 2020-04-29 03:37:35 -07:00
Jochen Friedrich a4918a8950 ircd: Fix missing fs_path.lo ASIO unit designation. (regression 2953ca0b55) 2020-04-19 18:29:26 -07:00
Jason Volk 2953ca0b55 ircd::fs: Split path related from fs unit. 2020-04-18 19:06:13 -07:00
Jason Volk 5ea8ac362c Enable link-time optimization for central libraries with clang. 2020-04-18 01:26:31 -07:00
Jason Volk d4eaad08df ircd::net: Split net_dns_netdb from net_dns unit. 2020-04-13 12:05:15 -07:00
Jason Volk fa853580e1 ircd::net: Split listeners/acceptors into unit. 2020-04-13 00:11:15 -07:00
Jochen Friedrich b84f3f03ae fixed lookup of boost headers 2020-03-10 13:16:42 -04:00
Jason Volk 72b772b530 ircd: Make exception.o as an asio unit for system_error interop; minor comments. 2020-02-26 11:50:10 -08:00
Jason Volk 38aa9b6d0c ircd::net::addrs: Split into translation unit. 2020-02-26 11:50:10 -08:00
Jason Volk 393ff914a3 ircd: Remove errant specific unit line in Makefile. 2020-02-26 11:50:10 -08:00
Jason Volk 72642ef556 ircd: Add PBC stub. 2020-02-11 15:47:18 -08:00
Jason Volk 2e9337d198 ircd::run: Split run.cc from ircd.cc for static initialization order upstreaming.
This allows run::changed handlers to be statically constructed in definition files
which are ordered before ircd.cc (i.e. all of them).
2020-01-24 10:40:33 -08:00
Jason Volk 37cde44d58 ircd::cbor: Reconstitute head reader and utils. 2019-12-26 11:43:01 -08:00
Jason Volk 6fec0b3e10 ircd::db: Add workaround for unconditional crc32'ing within rocksdb. 2019-10-07 02:00:44 -07:00
Jason Volk 4af83b83c4 ircd::ctx: Add optimized jump_fcontext on x86_64 platforms. 2019-10-07 02:00:44 -07:00
Jason Volk cd7ff331e9 ircd: Eliminate defaulted weak symbols for lib; minor relaxations remain. 2019-10-05 20:02:18 -07:00
Jason Volk 2b2374db6c ircd: Split all non-matrix definitions back to lib; rename module to net_dns_cache. 2019-10-05 17:37:44 -07:00
Jason Volk cfc76f1777 ircd::net::dns: Move resolver into libircd proper. 2019-10-03 12:14:29 -07:00
Jason Volk 06d8e4f5cf ircd: Bump library version. 2019-09-30 19:27:25 -07:00
Jason Volk d3809d43e5 Reorganize Makefiles. 2019-09-27 19:35:26 -07:00
Jason Volk 89e0a7fc82 ircd: Move matrix application related to derived library. 2019-09-27 19:35:26 -07:00
Jason Volk 99d080767f ircd: Add interface to backtrace(3). 2019-09-19 22:07:41 -07:00
Jason Volk 125f53872c ircd::fs: Preliminary io_uring infrastructure plumbing. 2019-08-11 01:39:30 -07:00
Jason Volk fefaaca2c2 ircd::prof: Split header into directory.
ircd::prof: Split linux/perf_event specific to unit.
2019-07-31 19:43:09 -07:00
Jason Volk 471c08a41e ircd::ctx: Split exception_handler w/ cxxabi header requirement. 2019-07-21 15:29:16 -07:00
Jason Volk 1c01b21720 ircd::util: Add unit and deinline various date/time util. 2019-07-15 09:47:34 -07:00
Jason Volk ce55859fb2 ircd:Ⓜ️ Rename v1 to fed. 2019-07-12 19:29:51 -07:00
Jason Volk d19e960c58 ircd: Split ctx::ole to definition file. 2019-07-11 15:51:09 -07:00
Jason Volk de94e95422 ircd: Split out overgrown components from stringops.h 2019-07-11 15:51:09 -07:00
Jason Volk 13d733e89d ircd::stats: Allow a default value to be passed in the feature. 2019-07-11 15:51:09 -07:00
Jason Volk adda5ba170 ircd::allocator: Start an allocator_je.cc unit. 2019-07-03 18:57:48 -07:00
Jason Volk 6a6c51d359 ircd::allocator: Distill out GNU malloc featurette from allocator.cc unit. 2019-07-03 18:57:48 -07:00
Jason Volk ea0a1df3a1 configure: Add options for third-party allocator selection/deselection and inclusion. 2019-07-03 18:02:54 -07:00
Jason Volk f88cc51e37 ircd: Move definitions for various valgrind suites to vg.cc for header isolation. 2019-07-03 15:14:29 -07:00
Jason Volk c692b009a4 Fix -fuse-ld ldflags. 2019-06-24 01:33:41 -07:00
Jason Volk cd8d070fb6 ircd: Fix compiler option switches for clang. 2019-06-23 07:37:23 -06:00
Jason Volk d17afdd531 ircd::http2: Start an RFC7540 implementation. 2019-06-21 16:54:22 -07:00
Jason Volk 390b8bf2fb ircd:Ⓜ️ Remove remaining vestiges of m::state.
closes #15.
2019-06-15 14:10:36 -07:00
Jason Volk 4fdc6355fc ircd: Add workaround for errant pthread mutex use in rocksdb.
Fixes #81.
2019-06-11 13:57:15 -07:00
Jason Volk 2b43a5a92b configure: Add --enable-compact for the smallest possible building and linking. 2019-06-06 05:29:07 -07:00
Jason Volk 5ff021c96b Makefiles: Cleanup linker flags with spaced arguments. 2019-06-05 23:22:05 -07:00
Jason Volk cde857beb6 ircd: Rename lexical.cc to lex_cast.cc 2019-06-05 02:10:29 -07:00
Jason Volk bbfda03e59 ircd: Move stringops definitions from lexical to own unit. 2019-06-05 02:09:42 -07:00
Jason Volk 1e6f8c6946 Revert "Link with explicit -shared-libgcc to prevent ld.gold causing static fallback."
This reverts commit 3f9fb44475.

Reverted because it breaks debug line numbers in libircd and construct where it is
linked.
2019-05-29 18:18:44 -07:00
Jason Volk edc7ca6af8 ircd: Rename mods_dl unit to mods_ldso. 2019-05-28 14:50:55 -07:00
Jason Volk 090fda072b ircd::mods: Propagate our own exception through ld.so. 2019-05-28 05:48:18 -07:00
Jason Volk 7783e1f6ee Define an indicator for all libircd implementation compilation units. 2019-05-27 17:05:07 -07:00
Jason Volk 3f9fb44475 Link with explicit -shared-libgcc to prevent ld.gold causing static fallback. 2019-05-27 03:29:06 -07:00
Jason Volk e618f82dfc Fix inconsistent use of $PLATFORM_LDFLAGS. 2019-05-27 03:07:59 -07:00
Jason Volk 3b6ce6ed6c ircd: Minor cleanup Makefile PLATFORM_LDFLAGS. 2019-05-25 22:35:54 -07:00
Jason Volk 81ae93ecc1 Re-attempt use of .gdb_index section. 2019-05-17 00:44:00 -07:00
Jason Volk 04ec279fb5 ircd: Reduce debug_info bloating in units with spirit grammars. 2019-05-16 22:36:19 -07:00
Jason Volk ed11153d27 Allow STB_GNU_UNIQUE for RTLD_DEEPBIND.
modules: Remove cruft; tweak Makefile.
2019-05-16 22:36:19 -07:00
Jason Volk 530ae5fd0c ircd: Minor cleanup. 2019-05-06 13:18:51 -07:00
Jason Volk d38d4b22f6 ircd: Remove manual include and use the pch for parse.cc 2019-05-06 10:44:02 -07:00
Jason Volk 1d0a7d700d ircd:Ⓜ️ Merge m_event module entirely into ircd/m_event for now. 2019-05-03 15:58:39 -07:00
Jason Volk 154eee0ca6 ircd: Make unresolved symbols weak symbols; lazy binding in modules. 2019-05-02 16:45:27 -07:00
Jason Volk 68f82d25a3 Remove no-op linker flag in these contexts. 2019-05-02 16:45:27 -07:00
Jason Volk f9e858ae9e Add these gold linker section organization options. 2019-05-02 16:45:27 -07:00
Jason Volk ecdb028365 ircd: Reorder units in Makefile. 2019-05-01 15:40:17 -07:00
Jason Volk 8ecea80a1b ircd: Merge conditional compilation units into the ordered sources list. 2019-04-30 16:46:34 -07:00
Jason Volk 744438ec49 ircd: Precompile the spirit.h header. 2019-04-20 19:24:18 -07:00
Jason Volk 62441e1c68 ircd: Switch to lazy-loading libircd.so symbols. 2019-04-17 17:29:08 -07:00
Jason Volk 5c558f98b6 ircd: Remove the initfirst linker request option. 2019-04-09 21:08:15 -07:00
Jason Volk 63c850b123 ircd: Rename perf:: to prof::. 2019-04-03 15:51:42 -07:00
Jason Volk 403bf52867 ircd::perf: Start a perf profiling subsystem; move ctx::prof counter utils. 2019-03-31 18:16:18 -07:00
Jason Volk 3480819ab5 configure: Add conditional for --enable-lowmem-compile. 2019-03-22 17:46:21 -07:00
Jason Volk 2f1cd45fba ircd/Makefile.am: Apply param ggc-min-expand to grammar units; minor reorg. 2019-03-22 16:43:17 -07:00
Jason Volk ede2439a55 ircd: Add support for configurable soft-assertions. 2019-03-15 16:19:05 -07:00