summaryrefslogtreecommitdiff
path: root/Makefile (follow)
Commit message (Expand)AuthorAgeFilesLines
* Makefile: Normalize alongside other Go projectsEuAndreh2024-04-181-24/+17
* Makefile: add binder instance for port 6667EuAndreh2024-03-301-4/+7
* Makefile: rm both socket filesEuAndreh2024-03-291-2/+2
* Makefile: Reorder commands so we don't need to sleepEuAndreh2024-03-291-2/+1
* Makefile: s/main.bin/$(NAME).bin/gEuAndreh2024-03-281-4/+4
* Makefile: s/ircd/papo/gEuAndreh2024-03-281-5/+5
* Makefile: Adapt "run-*" virtual targetsEuAndreh2024-03-281-8/+12
* Adapt build and installationEuAndreh2024-03-281-30/+17
* Node.js -> GoEuAndreh2024-03-251-31/+25
* tests/rand.mjs: Add MersenneTwister random number generator•••The `tests/rand.c` is also added: a simplified adaptation of the original algorithm implementation in C. A 10k numbers test case shows that the JavaScript version behaves the same that the C one does. EuAndreh2024-03-201-2/+12
* Makefile: Use TCP port 6001EuAndreh2024-03-141-1/+1
* Makefile: Add "run-binder" to expose lighttpd's unix socket to a TCP portEuAndreh2024-03-141-1/+7
* src/hero.mjs: Add rmIf() and mkfifo()EuAndreh2024-03-061-12/+7
* Makefile: Let the application recreate its pipes and socketsEuAndreh2024-03-011-1/+1
* Setup user-level lighttpd reverse proxy for development and testing•••Add static files as in production, too. EuAndreh2024-03-011-1/+5
* src/ircd.mjs: Remove unix socket before recreating itEuAndreh2024-03-011-1/+0
* Normalize how modules import and name each other•••Also add a `defaultInterceptors` variable in `src/hero.mjs` to avoid needing to redefine it in every application. EuAndreh2024-02-241-2/+9
* Implement accretion.runMigrations() and wrappings of node-sqlite3EuAndreh2024-02-231-0/+1
* Big cleanup•••- delete all SQLite Node-API code: we'll use the C++ one instead; - implement hero.mjs, with tests! - use ESM all over. EuAndreh2024-02-231-48/+14
* Remove C code and cleanup repositoryEuAndreh2024-02-211-131/+21
* Makefile: Include SQL migration files as installable artifactsEuAndreh2023-11-271-1/+12
* Makefile: Also recompile `src/napi-sqlite.lo` when Makefile changesEuAndreh2023-11-271-0/+1
* Makefile: Fix missing installation of the `napi-sqlite.{c,node}` source and ...EuAndreh2023-11-271-1/+2
* Makefile: Fix missing installation of the `src/cli` executable•••The `$PREFIX/bin/papo` was being installed as a symlink, but the target was empty. EuAndreh2023-11-271-1/+1
* Makefile: Erase $(JSLIBDIR) together with $(SRCDIR)EuAndreh2023-11-251-1/+1
* Makefile: Compose $(CFLAGS.a) with $(CFLAGS) instead of combine•••Instead of defining a toplevel $(CFLAGS.a) that includes everything from $(CFLAGS) plus whatever is statically defined in the Makefile, we now use both $(CFLAGS) and $(CFLAGS.a) together, and we define neither. Now one can keep a single usage of $(CFLAGS), and override $(CFLAGS.a) when desired. Where previously, in order to give a flag only to $(CFLAGS.a), one had to write: $ make CFLAGS.a="$CFLAGS --.a-only" Now can be done via: $ make CFLAGS.a="--.a-only" IOW, previously $(CFLAGS.so) was "everything you gave to $(CFLAGS), plus this extra -fPIC" what now is "override $(CFLAGS), $(CFLAGS.a) or $(CFLAGS.so) as you wish". The same is true for $(LDLIBS), $(LDLIBS.a) and $(LDLIBS.so). EuAndreh2023-11-251-11/+8
* Add WIP non-async functions to napi-sqlite.cEuAndreh2023-11-161-1/+1
* Makefile, mkdeps.sh: Enforce JS->native dependency•••Assert that we'll always have the `src/napi-sqlite.node` binary ready by the time we get to any JavaScript file. EuAndreh2023-11-151-0/+1
* mv src/cli src/cli.jsEuAndreh2023-11-151-3/+4
* Add support for multi-file C project•••- have dynamic discovered dependencies via `mkdeps.hs`, and also move the listing of JavaScript files to it. - copy over stub C files for setting up the project skeleton. EuAndreh2023-11-151-29/+116
* src/napi-sqlite.c: Add Node-API PoCEuAndreh2023-11-131-2/+12
* tests/assert-*.sh: Reuse rebuilt assets for testsEuAndreh2023-11-131-0/+1
* tests/assert-uninstall.sh: Split from assert-install.shEuAndreh2023-11-131-3/+4
* Makefile: Clean directory symlink potential leftover before recreatingEuAndreh2023-11-131-0/+1
* src/{ircd,web}.js: Init stub serversEuAndreh2023-11-111-7/+30
* tests/js/: Run the files directly•••Instead of dynamically `import()`ing them in `tests/runner.js`, make each test file instead load `tests/runner.js` and run its own tests. EuAndreh2023-11-101-1/+1
* tests/js/compat.js: Remove unused fileEuAndreh2023-11-101-1/+0
* Makefile: Remove $(JSIMPL) variableEuAndreh2023-11-101-4/+3
* tests/assert-clean.sh: Enforce correctness of "make clean"EuAndreh2023-11-101-0/+1
* Makefile: s/LIST/MAILING_LIST/EuAndreh2023-11-101-6/+6
* Makefile: Install code under $(SRCDIR)•••So that later the package manager can run ctags on it and make them available for the user. EuAndreh2023-11-101-0/+9
* tests/assert-install.sh: Always to enforce correct installation•••Also in this change: - now we call ln(1) in the "install" target without using the -r "relative" flag, as it isn't POSIX; - add `+` as a prefix to the "assert-tests" command, so we tell sub-make calls to also run things in parallel. In this case, the "make DESTDIR=... install" calls; - use the implicit `index.js` entrypoint and do away completly with `package.json`; - change from `import` to `require` as Node.js ESM modules don't support `$NODE_PATH`[0]: "NODE_PATH is not part of resolving import specifiers. Please use symlinks if this behavior is desired." 🤦; The parallel sub-make behaviour isn't available in current specification of make (POSIX issue 7) but is included in the upcoming[1] version 8: > If a rule invokes a sub-make either via the MAKE macro or via a > command line that begins with '+', the sub-make is the same > implementation as the make that invoked the sub-make, and the −j > option is passed to the sub-make via the MAKEFLAGS environment > variable with the same maxjobs value and is not overridden by a > maxjobs value from another source (even if it has the same value), the > sub-make shall use the same token pool as its invoking make rather > than create a new token pool. [0]: https://nodejs.org/api/esm.html#no-node_path [1]: https://www.opengroup.org/austin/restricted/202x-d3/202x_d3.pdf EuAndreh2023-11-101-9/+14
* tests/assert-deps.sh: Enforce Makefile is always up-to-dateEuAndreh2023-11-091-7/+13
* Setup correct project install and uninstallEuAndreh2023-11-091-3/+7
* Initial project structureEuAndreh2023-11-091-0/+134