Commit Graph

220 Commits

Author SHA1 Message Date
Jason Volk 9fd7b60917 construct: Allow -recoverdb option to specify a string argument. 2020-10-27 22:44:06 -07:00
Jason Volk 813b686e97 ircd:Ⓜ️:app: Add autorun mechanism; conf items; program options. 2020-10-27 04:11:44 -07:00
Jason Volk a91dc48322 construct: Remove redundant final epoch value. (bfe864663c) 2020-10-20 22:19:34 -07:00
Jason Volk 6da204b063 construct: Fix exception propagation; interrupt masking during runlevel change. 2020-10-17 16:01:36 -07:00
Jason Volk 2ddf5faf37 construct: Reachability instrumentation fix for clang. 2020-10-01 19:15:15 -07:00
Jason Volk b7b2c44973 ircd: Improve restart-assist to convey different program options. 2020-10-01 00:02:16 -07:00
Jason Volk 0492090b56 construct: Synchronize smoketest quit action with console command completion. 2020-09-27 17:17:00 -07:00
Jason Volk 3fedfaeb8d ircd: Add conf item to convey contextual diagnostic options. 2020-09-27 14:57:07 -07:00
Jason Volk 236fd361e5 construct: -repairdb implies -nocompact and -console. 2020-09-22 07:32:22 -07:00
Jason Volk c84a211b4c construct: Increase matrix context stack size. 2020-09-22 07:32:22 -07:00
Jason Volk ee8759cd0b Use foreign automake options to append flags here without warning. 2020-09-18 22:27:23 -07:00
Jason Volk 0675a621f1 ircd:Ⓜ️:homeserver: Add specific option to toggle initial backfill jobs after startup. 2020-09-16 23:00:58 -07:00
Jason Volk 4ecb2d0d5f ircd: Add distinct maintenance mode; chain write-avoid/read-only and net listen modes. 2020-09-15 22:16:11 -07:00
Jason Volk a02bd474d7 Fix EXTRA_CXXFLAGS append order regression. 2020-09-13 14:32:47 -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 c5d60c1af6 construct: Slave implies read-only. 2020-07-28 00:38:46 -07:00
Jason Volk d2fd7488fe construct: Condition to bypass one-time console instruction output. 2020-07-20 22:44:53 -07:00
Jason Volk cfba2b52c9 ircd::run: Add additional UNLOAD runlevel on shutdown after QUIT. 2020-06-12 18:41:30 -07:00
Jason Volk 35d4ee811b ircd::db: Add preliminary support for secondary-mode if available. 2020-06-11 03:51:49 -07:00
Jason Volk c037519246 ircd::db: Add additional recovery mode if supported. 2020-06-10 22:36:27 -07:00
Jason Volk b68b4d113a ircd::db: Add conf item to disable automatic compactions.
construct: Add -nocompact program option.
2020-06-10 22:36:27 -07:00
Jason Volk cd9faf8c20 construct::console: Allocate output buffer at class level. 2020-05-25 01:05:26 -07:00
Jason Volk b0776fd0f8 ircd:Ⓜ️:homeserver: Preliminary bootstrap from event vector. 2020-05-10 03:52:28 -07:00
Jason Volk e2301d6d2e construct::signals: Clear signal set for shutdown; place dtor. 2020-05-10 03:02:25 -07:00
Jason Volk 98c2ca73cd construct: Add debuglog for execution epoch counters at shutdown. 2020-05-10 03:02:25 -07:00
Jason Volk ca18ea1c17 construct: Redirect error propagation and startup failure. 2020-05-10 03:02:25 -07:00
Jason Volk 7dc740e387 configure: Minor string punctuation consistency.
construct: Minor string punctuation.
2020-05-09 17:43:57 -07:00
Jason Volk dc713f711a configure: Use PKG_CHECK_MODULES; fix jemalloc related.
construct: Add missing MALLOC_LDFLAGS.
2020-05-08 14:20:19 -07:00
Jason Volk 11f2eff4d9 Add -defaults program option to restore from broken configurations. 2020-04-24 21:58:57 -07:00
Jason Volk 94ff1fbafe cosntruct: Add multi-command -execute support. 2020-04-24 16:42:15 -07:00
Jason Volk a2f55eeab8 construct: Add STRINGS program options type support. 2020-04-24 16:39:51 -07:00
Jason Volk de8fc1d05f construct: Add @MALLOC_LIBS@ to the executable. 2020-04-05 14:32:21 -07:00
Jason Volk c815de3621 ircd::run: Rename level IDLE to LOAD; minor reorg. 2020-03-16 16:56:07 -07:00
Jason Volk c1737e167c ircd::ios: Employ the asio::executor abstraction w/ backward-compat. 2020-02-27 12:44:57 -08:00
Jason Volk 47a5136045 ircd: Additional comments / docs on main mode confs. 2020-02-27 12:44:57 -08:00
Jason Volk e7f5bb3afe construct: Fix erroneous LDFLAGS for deps. 2020-02-26 11:10:27 -08:00
Jason Volk 9f18640bca cosntruct: Reorder exception_handler scope and eptr reference. 2020-02-18 09:56:52 -08:00
Jason Volk 37eaff3b67 Tweak tls-models. 2020-02-11 15:37:14 -08:00
Jason Volk e2e1c1541d construct: Save the count of handlers the io_service ran for convenience/diagnostic. 2020-01-24 09:49:50 -08:00
Jason Volk 092cb5d804 construct: Add program option for single user mode. 2020-01-12 18:22:47 -08:00
Jason Volk b0a773c922 ircd::db: Add conf item to repair on open. 2020-01-11 23:31:53 -08:00
Jason Volk 33a2d3ff6d construct: Default to -matrix switch enabled. 2019-11-30 13:46:35 -08:00
Jason Volk 5909f9ab64 construct: Add program option to enable matrix application. 2019-10-14 10:28:33 -07:00
Jason Volk b72eb83320 construct: Properly handle and propagate exception on load. 2019-10-07 15:23:52 -07:00
Jason Volk a9dbc68191 construct: Simplify executable's build and link flags. 2019-10-05 20:28:54 -07:00
Jason Volk 60e818b055 configure: Disable adding the ld.gold code folding flag for all units. 2019-10-05 20:28:54 -07:00
Jason Volk 3c556043fd construct: Improve console termination related. 2019-10-03 16:08:16 -07:00
Jason Volk b238f24862 construct: Post matrix context; fix direct jump. 2019-10-03 16:08:00 -07:00
Jason Volk ec8459dd41 construct: Reenable -nomatrix program option. 2019-10-03 13:21:50 -07:00
Jason Volk e7c66d86d9 ircd::run: Add another runlevel; eliminate main callback; simplify. 2019-10-02 16:49:30 -07:00
Jason Volk dbb3c55db5 matrix: Add m::homeserver; preliminary virtual origin networks. 2019-10-01 17:56:01 -07:00
Jason Volk ad195ef8a4 Fix build / Makefile related errors. 2019-09-30 14:23:28 -07:00
Jason Volk 0b0e903dc7 construct: Add matrix unit; move instance out from ircd. 2019-09-30 14:23:28 -07:00
Jason Volk 89e0a7fc82 ircd: Move matrix application related to derived library. 2019-09-27 19:35:26 -07:00
Jason Volk 1d14a2d7c1 construct: Add descriptor for signal handler's use of ios. 2019-09-25 15:00:25 -07:00
Jason Volk 52a6c82a93 construct::console: Use context::DISPATCH flag for faster response. 2019-09-15 19:36:39 -07:00
Jason Volk efadd20ce8 Revert "ircd::fs::aio: Use defer to post the chaser." [skip ci]
This reverts commit 726f131cc2.

Revert "construct: Set asio::io_context concurrency hint to 1."

This reverts commit 0d1b3de7c0.
2019-09-15 19:36:39 -07:00
Jason Volk 34898aaea0 construct: Make interruption during cmd in watch. 2019-09-11 18:29:24 -07:00
Jason Volk b09c0a464a construct: Allow millisecond sleep times for watch command. 2019-09-11 17:47:36 -07:00
Jason Volk 224c67032a modules/console: Show help rather than bad command if possible. 2019-08-20 21:23:18 -07:00
Jason Volk 51adbcfe24 construct: Simplify warning condition; fix warning log message argument. 2019-08-17 22:26:23 -07:00
Jason Volk 125f53872c ircd::fs: Preliminary io_uring infrastructure plumbing. 2019-08-11 01:39:30 -07:00
Jason Volk 400c8ecfcb construct: Consider a SIGINT a quit in runlevels other than RUN. 2019-07-08 06:03:20 -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 88a633efdb construct: Improve usage error message. 2019-06-28 22:15:47 -07:00
Jason Volk 80655da66e Misc fixes for clang. 2019-06-24 01:34:14 -07:00
Jason Volk c692b009a4 Fix -fuse-ld ldflags. 2019-06-24 01:33:41 -07:00
Jason Volk 8c7b265916 construct: Always disable IPv6 by default unless -6 program option is used. 2019-06-22 17:39:25 -07:00
Jason Volk 4c95fc94a5 construct: Fix log message format for header/lib mismatch. 2019-06-19 13:32:40 -07:00
Jason Volk 3d04ed9ad0 configure: Remove the CPPDEFINE for RB_TIME_CONFIGURED. 2019-06-13 15:03:32 -06: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 f702520044 ircd: Add infrastructure to handle continuation notification after suspending. 2019-06-05 15:06:16 -07:00
Jason Volk 351f1804c8 Add runtime program option to soften assert behavior. 2019-06-01 02:10:30 -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 f94f519271 ircd: Add conditioned debugtrap() utility in assert suite.
ircd: Fix some assert header conflicts.

construct: Add TRAP special command handler.
2019-05-28 16:55:41 -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 81ae93ecc1 Re-attempt use of .gdb_index section. 2019-05-17 00:44:00 -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 0d1b3de7c0 construct: Set asio::io_context concurrency hint to 1. 2019-05-13 15:25:37 -07:00
Jason Volk 56b63be2aa construct: Return from main() for future compat. 2019-05-09 16:58:29 -07:00
Jason Volk 1ae664f6a0 construct: Tweak usererrstr formatting; minor cleanup. 2019-05-09 16:58:29 -07:00
Jason Volk abae2c02f5 ircd::net: Fix for 864f50da (kicks can down the road). 2019-05-03 18:13:01 -07:00
Jason Volk 864f50da17 construct: Leak a dynamic io_context instance; temp workaround to s_dns symbol issue. 2019-05-03 15:57:09 -07:00
Jason Volk dd4090e11b construct: Add smoketest. 2019-04-24 02:19:14 -07:00
Jason Volk 7ea6a3b39a construct: Minor cleanup. 2019-04-23 01:51:21 -07:00
Jason Volk ccb2d86cdc construct: Add header/library version startup checks. 2019-04-23 01:30:52 -07:00
Jason Volk bf3a23b8d2 construct/console: Eliminate extra sleep() after output done. 2019-04-19 19:07:12 -07:00
Jason Volk f9025cebb9 ircd: Support read-only and write-avoid modes via conf item / command line. 2019-04-15 11:16:31 -07:00
Jason Volk 0b8725953e construct: Update comment. 2019-04-10 22:32:06 -07:00
Jason Volk daec603205 construct: Improve main function commentary etc. 2019-04-03 15:51:42 -07:00
Jason Volk bc2fdf2b15 construct: Add a -norun program option for debugging and testing. 2019-04-03 15:51:42 -07:00
Jason Volk ee35e71b28 construct: Add program option -no6 to disable ipv6 at startup. 2019-03-25 15:18:06 -07:00
Jason Volk a21e03df27 ircd: Add restart support w/ console cmd. 2019-03-02 14:20:52 -08:00
Jason Volk f0428a26b9 construct: Remove the -configfile po; put io_context on stack; minor cleanup. 2019-03-02 14:20:52 -08:00
Jason Volk 2854ea9a0f Makefiles: Remove --gdb-index here because no -gsplit-dwarf used. 2019-02-25 18:20:48 -08:00
Jason Volk 169abb0676 construct/console: Add a couple more halting options. 2019-02-22 15:40:52 -08:00
Jason Volk 944f5968e6 construct: Add primitive console history. 2019-02-09 18:43:05 -08:00
Jason Volk 4827ab4103 Construct: Split headers. 2019-02-09 18:43:05 -08:00
Jason Volk 3151931ee4 Linker options package. 2019-02-08 18:24:20 -08:00