1
Commit Graph

542 Commits

Author SHA1 Message Date
Motiejus Jakštys
b3d3be2049 maintainers: update the section
We have a new maintainer. Also clarify what they can and cannot do.
2023-04-28 21:01:53 +03:00
Motiejus Jakštys
e319ac4635
zig cache dir: move to /tmp/zig-cache (#52)
This cache directory can be re-used by everything and everyone. There is
nothing bazel or hermetic_cc_toolchain specific there. So let's make it
clear.

Also, if there are any more zig-based toolchains on top of Bazel or
other build systems where they cannot rely on $HOME, but need an
absolute path, this feels like a reasonable choice.
2023-04-28 09:05:34 -07:00
Motiejus Jakštys
9855851dd0 remove PUBLICITY.md
We've outgrown this by now.
2023-04-27 10:18:27 +03:00
Jonathan Baker
e8c37be732 Update README.md
Fixed URL references

Signed-off-by: Jonathan Baker <jonbaker@uber.com>
2023-04-27 09:34:34 +03:00
Jonathan Baker
7179113b66 Rename Publicity.md to PUBLICITY.md
Signed-off-by: Jonathan Baker <jonbaker@uber.com>
2023-04-27 09:34:34 +03:00
Jonathan Baker
9dc94fb435 Create Publicity.md
Signed-off-by: Jonathan Baker <jonbaker@uber.com>
2023-04-27 09:34:34 +03:00
Jonathan Baker
372b746490 Update README.md
Updated references to use the plural "team".  Corrected grammar in the Project Origin, and added highlight.  Moved Previous Communication under Communication.

Signed-off-by: Jonathan Baker <jonbaker@uber.com>
2023-04-27 09:34:34 +03:00
Motiejus Jakštys
1deefddc95 Merge branch '47' 2023-04-26 09:59:36 +03:00
Jeremy Volkman
f35f5d3eeb buildifier 2023-04-26 07:32:43 +03:00
Jeremy Volkman
5a7e58af4e Move -Wl,-S to a separate strip_debug_symbols feature 2023-04-26 07:32:43 +03:00
Motiejus Jakštys
b1b66ce88c Merge tag 'v2.0.0-rc1'
This is a whoops of me forgetting to push the main branch after the
release.
2023-04-25 09:39:53 +03:00
Motiejus Jakštys
46289440a3 releaser: add MODULE.bazel
To make bzlMod work.

Test:

    $ tar -tvf hermetic_cc_toolchain-v99.0.0.tar.gz | grep MODULE.bazel
    -rw-rw-r-- root/root       561 2023-04-24 21:03 MODULE.bazel
2023-04-24 21:37:48 +03:00
Motiejus Jakštys
c2701497d0 update mailing list archive
There will be no more emails coming in there.
2023-04-24 21:07:53 +03:00
Motiejus Jakštys
fa951e262e
Merge pull request #33 from jvolkman/dev/linkopts
Re-add linkopts and set -Wl,-headerpad_max_install_names on macos
2023-04-24 20:41:44 +03:00
Jeremy Volkman
cff2b2660b Re-add linkopts and set -Wl,-headerpad_max_install_names on macos 2023-04-24 09:48:27 -07:00
Motiejus Jakštys
9e7efd9a1b remaining linker_version_scripts cleanup
This was missed in #30
2023-04-24 16:16:00 +03:00
Motiejus Jakštys
1f50f76cc6 bump zig sdk to 0.11.0-dev.2619+bd3e248c7
From https://github.com/marler8997/zig-unofficial-releases

I also updated the "Release Process" wiki instructing how to use it.
Long live Mr. Marler!

The launcher got a facelift because of this error:

    /code/zig-linux-x86_64-0.11.0-dev.2619+bd3e248c7/lib/std/fmt.zig:2013:9: error: function called at runtime cannot return value at comptime
            return &buf;
            ^~~~~~~~~~~
    referenced by:
        test.launcher:parseArgs: toolchain/launcher.zig:334:31
        remaining reference traces hidden; use '-freference-trace' to see all reference traces

Zig gets confused by the requirement in that test in a runtime context.
2023-04-24 15:48:07 +03:00
Motiejus Jakštys
491144c721 remove rules/rules_go
1. Go needed quite a few hacks to be made work with Go. From
   https://github.com/ziglang/zig/pull/15060 less hacks are needed (but
   still not zero, though now documented).
2. This file was never meant to be exposed as part of
   `hermetic_cc_toolchain`. I probably broke someone. Sorry.
2023-04-24 14:59:15 +03:00
Motiejus Jakštys
3e07f72a8b bump zig sdk to 0.11.0-dev.2619+bd3e248c7
From https://github.com/marler8997/zig-unofficial-releases

I also updated the "Release Process" wiki instructing how to use it.
Long live Mr. Marler!

The launcher got a facelift because of this error:

    /code/zig-linux-x86_64-0.11.0-dev.2619+bd3e248c7/lib/std/fmt.zig:2013:9: error: function called at runtime cannot return value at comptime
            return &buf;
            ^~~~~~~~~~~
    referenced by:
        test.launcher:parseArgs: toolchain/launcher.zig:334:31
        remaining reference traces hidden; use '-freference-trace' to see all reference traces

Zig gets confused by the requirement in that test in a runtime context.
2023-04-24 14:46:23 +03:00
Motiejus Jakštys
cb46744cb8 launcher: use -mcpu=baseline
This log message has been seen in a Github Actions worker:

      running <...>/c++ failed: signal: illegal instruction (core dumped)

I conclude that the launcher was compiled on a newer CPU than used on
the worker at the time.

Reported-by: mp@edgeless.systems

Fixes #22
2023-04-24 12:38:23 +03:00
Motiejus Jakštys
765fd04587 README: bring the compat name of http_archive #40
The recent repository rename broke the assumption about the repository
name.

We will soon (hopefully next week) release v2 with all the occurrences
of `bazel-zig-cc` removed, and all of this will be over. Sorry for the
confusion/mess until that happens.

Fixes #39
2023-04-24 12:12:34 +03:00
Motiejus Jakštys
ef820f5e59 README.md: use the correct badge 2023-04-24 12:10:33 +03:00
Goni Zahavy
f164afe89a Removed leftovers of compiler_extra_includes 2023-04-24 12:09:35 +03:00
Goni Zahavy
19c735c41a remove glibc hacks and update Zig SDK 2023-04-24 12:09:35 +03:00
6ba4b61d05 Update MODULE.bazel
Signed-off-by: Motiejus Jakštys <motiejus@jakstys.lt>
2023-04-24 12:07:33 +03:00
zplin
3569fbd0fd dev_dependency 2023-04-24 12:07:33 +03:00
zplin
fa7a3d8e9f Adding MODULE.bazel 2023-04-24 12:07:33 +03:00
Motiejus Jakštys
92067b5d85 remove @bazel_skylib dependency (again)
This was accidentally included in
d61aab183e434d48783dbaa2fdb9e39714217637
2023-04-24 12:02:35 +03:00
Motiejus Jakštys
0e12e84103 replace run_shell with run 2023-04-24 10:13:53 +03:00
Motiejus Jakštys
3630f62053 rules/ remove run_under
rules/ were never meant to be added to the release. Now that we are not
*running* multi-arch binaries, we can remove the infrastructure that was
necessary to do so.

I may get back to this -- but we need to dust quite a bit off before
that happens.
2023-04-24 10:13:53 +03:00
Motiejus Jakštys
9779650a78 Work around a known race in Zig build system
More information in the commit message and
https://github.com/ziglang/zig/issues/14815
2023-04-24 10:10:58 +03:00
Motiejus Jakštys
97a4846b58 remove @bazel_skylib dependency
We are using only a single trivial function `paths`, which can be
bundled. Makes things like test-zigcc[1] easier: less dependencies to
worry about.

[1]: https://git.jakstys.lt/motiejus/test-zig-cc/
2023-04-24 10:10:30 +03:00
Motiejus Jakštys
62f6b80479 README: fix the download URL
We need to preserve the old mirror URL until the new release is cut.
2023-04-21 19:40:16 +03:00
Motiejus Jakštys
e0e7a4ca46
Rename bazel-zig-cc to hermetic_cc_toolchain (#36)
As it says on the tin.

Long live hermetic_cc_toolchain!
2023-04-21 10:00:03 -04:00
Motiejus Jakštys
73a9ceccfb
revert "Re-license portions of the code to Apache 2.0" (#35)
This (partially) reverts commit dfdb1f2680
2023-04-19 20:23:25 -04:00
Motiejus Jakštys
4ddd3b7a62
Make Project Origin more prominent (#34)
The link to the historic email threads seems to be a good spot for it.
2023-04-19 20:22:48 -04:00
Zhongpeng Lin
041d7f26ab
Fixing the url template in readme (#27) 2023-03-24 14:10:17 -04:00
Jonathan Baker
477f3d3690
Fixed release URL in readme (#26) 2023-03-24 09:47:42 -04:00
Motiejus Jakštys
6d2ee8cad0 replace zopfli with encoding/gzip 2023-03-14 20:25:57 +02:00
Motiejus Jakštys
d3a2d43356 releaser
This is a work in progress. Next steps:

1. Add instructions to the wiki.
2. Try the new tarball on a real repository.
3. Cut the actual release.

Test output for an upcoming `v1.0.2`:

    $ bazel run //tools/releaser -- -skip_upgrades=true -tag v1.0.2
    INFO: Analyzed target //tools/releaser:releaser (1 packages loaded, 29 targets configured).
    INFO: Found 1 target...
    Target //tools/releaser:releaser up-to-date:
      bazel-bin/tools/releaser/releaser_/releaser
    INFO: Elapsed time: 1.978s, Critical Path: 1.81s
    INFO: 3 processes: 1 internal, 2 linux-sandbox.
    INFO: Build completed successfully, 3 total actions
    INFO: Running command line: bazel-bin/tools/releaser/releaser_/releaser '-skip_upgrades=true' -tag v1.0.2
    Running pre-release checks:
    - SKIPPING: go update commands
    - gazelle
    - checking if repository is clean
    Creating tag v1.0.2
    Creating archive bazel-zig-cc-v1.0.2.tar
    Compressing bazel-zig-cc-v1.0.2.tar
    Written /code/bazel-zig-cc/bazel-zig-cc-v1.0.2.tar.gz
    Release boilerplate:
    -----
    load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

    http_archive(
        name = "bazel-zig-cc",
        sha256 = "b0e857f8b32062a112305931437c5a7e1762287e27379c6d2d7173f0fa74e270",
        urls = [
            "https://mirror.bazel.build/github.com/uber/bazel-zig-cc/releases/download/v1.0.2/bazel-zig-cc-v1.0.2.tar.gz",
            "https://github.com/uber/bazel-zig-cc/releases/download/v1.0.2/bazel-zig-cc-v1.0.2.tar.gz",
        ],
    )

    load("@bazel-zig-cc//toolchain:defs.bzl", zig_toolchains = "toolchains")

    # Argument-free will pick reasonable defaults.
    zig_toolchains()

    # version, url_formats and host_platform_sha256 are can be set for those who
    # wish to control their Zig SDK version and where it is downloaded from
    zig_toolchains(
        version = "<...>",
        url_formats = [
            "https://example.org/zig/zig-{host_platform}-{version}.{_ext}",
        ],
        host_platform_sha256 = { ... },
    )
2023-03-14 20:25:57 +02:00
Motiejus Jakštys
4a42b46a99 launcher miscompilation workaround
Sometimes the launcher fails to compile with the following error
messsage:

```
error: FileNotFound
```

We cannot reproduce this in a controlled environment, but see it
happening in the wild often enough to receive repeated questions.

Since this has been escalated to Zig Software Foundation, the most
meaningful thing we can ask our users to do is apply a workaround and
wait. Let's do just that.
2023-03-14 13:52:13 +02:00
Motiejus Jakštys
5cccfb1ce1 move bin/ to tools/
The directories are not that different now. Also, clean up .bazelrc
2023-03-10 10:37:43 +02:00
Motiejus Jakštys
9b68f5ff1e
Add the mailing list archive (#8)
I will be shutting down ~motiejus/bazel-zig-cc@lists.sr.ht within days.
Now that comms are in Slack and github issues/PRs, let's add the
archive for historical reference.

It can be opened and read through like this:

  mutt -R -f mailing-list-archive.mbox
2023-03-08 09:16:22 -08:00
Motiejus Jakštys
3a204583f3
all commands: use /tmp/bazel-zig-cc (#6)
Different Bazel instances can share the zig cache all right.
2023-03-08 17:33:59 +02:00
Motiejus Jakštys
f239f467a0
go mod tidy (#7) 2023-03-07 21:06:56 -08:00
Motiejus Jakštys
95ee5b0d3a
update README (#5)
- remove mentions of wine and aarch64
- contributions are now straightforward
- update maintainers (do we need this section at all?)
2023-03-07 06:15:51 +02:00
Motiejus Jakštys
3f4b4ef88e
remove contrib/ (#4)
dead code; our release and testing processes changed quite a
bit.
2023-03-06 07:37:32 -08:00
Motiejus Jakštys
af9360366b
More CI (#3)
- ci only: use a separate zig cache dir for each run
- use `tools/bazel` everywhere.
- remove arm64 tests. They don't give enough value to be worth the
  brittle environment.
- remove windows execution, except for launcher. Ditto. I will probably
  bring them back.
2023-03-06 17:32:48 +02:00
Zhongpeng Lin
fef28b9706 Enable Lint on CI (#2) 2023-03-06 11:46:02 +02:00
zplin
a1b1be2303 Setup buildkite 2023-03-06 11:13:33 +02:00