Commit Graph

139 Commits (quic-wip)

Author SHA1 Message Date
Jason Rhinelander f7c18de0d4
Give up for now 7 months ago
Jason Rhinelander 1ca81713ab
Bump armhf static build to bullseye
Use backports for cmake because ngtcp2 needs 3.20+.
7 months ago
Jason Rhinelander e237d5ad6e
Don't export CC
This was causing cmake to double-invoke ccache for compilation units,
and broke oxen-mq's local zmq build for the same reason.
7 months ago
Jason Rhinelander d2667cfb89
Disable Router Hive & DEB builds
They aren't useful right now.
8 months ago
Jason Rhinelander c18ad4c618
Temporarily disable building/running test suite 8 months ago
dr7ana 81aa044baa kitware CI deps
- stupid warn deprecated stupid
9 months ago
dr7ana 0b6506a00b oxen-libquic version bump
- added CI fixes for gnutls build
9 months ago
dr7ana 9acac2c33e CI fixes
- oxen-logging updated to bump fmt version
- version bump oxen-logging to fix fmt version
- version bump oxen-mq to solve uniform distribution error
- misc errors introduced by above version bumps
- clang-format 14 -> 15
10 months ago
Jeff Becker dcd4623d2e
[win32 ci pipeline]
bookworm has no need for alternatives for mingw.

remove update-alternatives from the pipeline
1 year ago
Thomas Winget a9a2a115bc
debian missing yacc apparently all of a sudden 2 years ago
Jason Rhinelander caf97b1861
Split windows into gui/main builds, main now builds on bookworm
The options we need in rsvg-convert are apparently too new for bullseye,
so split the build so that we do the gui separately (in the nodejs-lts
container) and then build lokinet in bookworm.
2 years ago
Jason Rhinelander c8aa53a456
Use rsvg instead of imagemagick to make windows .ico
imagemagick is messing up the conversion, so just avoid it entirely and
use rsvg-convert directly to do it instead.
2 years ago
Jason Rhinelander 6be4621aea
Use Windows-y 'x64' instead of '64bit' in static upload 2 years ago
majestrate cd858a00ea
Merge pull request #2027 from jagerman/clang-format-14
Bump clang-format to 14
2 years ago
Jason Rhinelander d011f8fb4a
Bump clang-format to 14 2 years ago
Jason Rhinelander 0e09539b61 CI fixes
- cd .. after the build, before running extra_cmds, because the scripts
  we invoke expect to be in the root, not in the build dir (and it's
  dirtier for the build function to not undo the `cd build` that it
  runs).
- fix unclosed parenthesis in mac static lib checker
2 years ago
Jason Rhinelander 25d73d627a
Remake non-mac icon; regenerate during build for windows
The non-mac icon was an old version with white foreground and a
completely transparent background, but this looks bad (or invisible)
depending on where you view it.  This updates it based on the macos
icon, but with a round white circle background instead of the macos
"squircle" background.

This also replaces the .ico file for the installer with one that we
build during the win32 build rather than a pregenerated one.

Bumps the gui as well to a version with the new icons in place.
2 years ago
Jason Rhinelander 006394315d
Add local mirror to most jobs; build script cleanups 2 years ago
Jason Rhinelander 90be75d04e
Disable mips cross compile build on ci 2 years ago
Jason Rhinelander 9529553cf6
Add oxen build mirror to linux static builds 2 years ago
Jason Rhinelander 616f559761
macos CI fixes
- Split up mac.sh into a configure + build scripts (like Windows).
- Don't attempt to build the 'package' target in CI: apparently you have
  to have a logged in user at the GUI in order to build a .dmg because
  being obtuse is the Apple way.
- Upload the raw Lokinet unsigned app in a .tar.xz, rather than dmg,
  because of the above.
- make mac.sh respect JOBS (pun not intended (but still good))
2 years ago
Jeff Becker 4490fdcf46
fix up CI
add jason's suggested changes for artifact upload

use lokinet-ci-nodejs-lts as base image so we can build the installer

update ci pipeline for windows to have building gui toggle-able

by default we will build the gui from this repo, but this allows it to
easily run using a custom gui asset if needed
2 years ago
Jeff 871c3e3281
changeset for windows port
* wintun vpn platform for windows
* bundle config snippets into nsis installer for exit node, keyfile persisting, reduced hops mode.
* use wintun for vpn platform
* isolate all windows platform specific code into their own compilation units and libraries
* split up internal libraries into more specific components
* rename liblokinet.a target to liblokinet-amalgum.a to elimiate ambiguity with liblokinet.so
* DNS platform for win32
* rename llarp/ev/ev_libuv.{c,h}pp to llarp/ev/libuv.{c,h}pp as the old name was idiotic
* split up net platform into win32 and posix specific compilation units
* rename lokinet_init.c to easter_eggs.cpp as that is what they are for and it does not need to be a c compilation target
* add cmake option STRIP_SYMBOLS for seperating out debug symbols for windows builds
* intercept dns traffic on all interfaces on windows using windivert and feed it into lokinet
2 years ago
Jason Rhinelander 955cecb21d Drone macos fixes
- fix lib check script to look at the network extension
- amend the list of intented linked libs
- upload the dmg
2 years ago
Jason Rhinelander 49b2878209 Require explicit disabling of codesigning
Make the mac build require passing either an explicit -DCODESIGN=OFF or
the code signing identities.
2 years ago
Jason Rhinelander b81f7025c9
Replace logging with oxen-logger
Replaces custom logging system with spdlog-based oxen logging.  This
commit mainly replaces the backend logging with the spdlog-based system,
but doesn't (yet) convert all the existing LogWarn, etc. to use the new
format-based logging.

New logging statements will look like:

    llarp::log::warning(cat, "blah: {}", val);

where `cat` should be set up in each .cpp or cluster of .cpp files, as
described in the oxen-logging README.

As part of spdlog we get fmt, which gives us nice format strings, where
are applied generously in this commit.

Making types printable now requires two steps:
- add a ToString() method
- add this specialization:

      template <>
      constexpr inline bool llarp::IsToStringFormattable<llarp::Whatever> = true;

This will then allow the type to be printed as a "{}" value in a
fmt::format string.  This is applied to all our printable types here,
and all of the `operator<<` are removed.

This commit also:
- replaces various uses of `operator<<` to ToString()
- replaces various uses of std::stringstream with either fmt::format or
  plain std::string
- Rename some to_string and toString() methods to ToString() for
  consistency (and to work with fmt)
- Replace `stringify(...)` and `make_exception` usage with fmt::format
  (and remove stringify/make_exception from util/str.hpp).
2 years ago
Jason Rhinelander 34c3b8d0de
Add oxen repo to bionic for updated cmake version
Also rename the arg from loki_repo to oxen_repo
2 years ago
Jeff 994c6e1a21
remove focal deb build from ci 2 years ago
Jeff 0df26fe81c
bump ci to make jammy debs 2 years ago
Jeff d85d208156
bump libuv version with hashpin 2 years ago
Jeff 8efac67c0a
add static deps mirror to ci 2 years ago
Jeff 546aede528
add mirror for cmake static deps 2 years ago
Jeff 17687e300e drone-ci image name fix, use -builder images 2 years ago
Jeff 77bf2f4af9 disable building fat liblokinet.so on bionic because lto is broken on bionoic still 2 years ago
majestrate 65ef0e4bfb
Merge pull request #1849 from majestrate/dry-cross-2022-02-02
dry cross compile
2 years ago
Jeff 7265a6c80e ci pipeline for cross compile 2 years ago
Jeff bebfcbdba2 move documentation builder closer to the top of the ci jobs 2 years ago
Jeff 97f4545fd5 make CI pipline generate docs with doxygen, doxybook2 and mkdocs. 2 years ago
Jeff 7e92f36b6a disable tests by default
make ci enable tests explicitly
2 years ago
Jeff Becker 8c6bf31c52
paralellize android build much better
* split up configure step and build step so that build steps goes all at once
* update ci to use new build structure for android
3 years ago
Jeff Becker e7d282993a
in static linux ci pipeline disable building lokinet-bootstrap and bundle a bootstrap.signed 3 years ago
Jason Rhinelander 45249422b1 Fetch CI submodules in parallel 3 years ago
Jason Rhinelander 7bc86ff983 Reorder pipelines to put static builds together 3 years ago
Jason Rhinelander 31d2242cc6 Disable ABI warnings on buster/armhf 3 years ago
Jason Rhinelander d27a095f1f Fix arch-specific docker repo names 3 years ago
Jason Rhinelander f71d795f1d Make sure we always pull the latest image 3 years ago
Jason Rhinelander 55356face2 No recommends 3 years ago
Jason Rhinelander 76d69a3d70 Add cached images with debhelper & related tools for deb pipelines 3 years ago
Jason Rhinelander 47d8c95e68 CI docker multiarch
Adds multiarch docker images and starts using them.
3 years ago
Jason Rhinelander 1dccbb5814 Update deb repo dns name 3 years ago