Commit Graph

72 Commits

Author SHA1 Message Date
teto
a00e12bc53 luajit: update deprecated substituteInPlace --replace 2026-07-28 13:35:34 +02:00
OPNA2608
ca9f272bf9 {luajit,luajit_2_0,luajit_openresty}: Add powerpc64-linux to unsupported platforms
Official LuaJIT throws same error on powerpc64 as it does on powerpc64le.
2026-03-23 17:58:24 +01:00
Marcin Serwin
2000ec68c5 maintainers: drop smironov
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2026-03-04 17:34:27 +01:00
Jarrad Hope
d992204d8c luajit: enable MinGW build
LuaJIT's build needs an explicit Windows target when cross compiling to MinGW.

Without this it can emit ELF-specific assembler directives (e.g. .hidden/.type/.size),

which fail with the PE/COFF toolchain.

Also provide an install-time compatibility copy from src/luajit.exe to src/luajit,

since the upstream install rule expects the non-.exe name.
2026-01-02 13:52:36 -05:00
Ihar Hrachyshka
567e8dfd8e treewide: clean up 'meta = with' pattern
This commit was created by a combination of scripts and tools:
- an ast-grep script to prefix things in meta with `lib.`,
- a modified nixf-diagnose / nixf combination to remove unused `with
lib;`, and
- regular nixfmt.

Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
2025-12-10 18:09:49 +01:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
Weijia Wang
43c1552a56 luajit: add loongarch64-linux to bad platforms 2025-04-28 12:51:11 +02:00
musjj
629494c10a luajit: add mainProgram 2025-03-16 20:01:18 +01:00
Wolfgang Walther
7fea091aa8 {lua-5,luajit}: fix missing @ lua @ reference in utils.sh 2025-01-26 16:47:16 +01:00
Silvan Mosberger
667d42c00d treewide: format all inactive Nix files
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.

Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.

A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.

This commit was automatically created and can be verified using

    nix-build a08b3a4d19.tar.gz \
      --argstr baseRev 57b193d8dd
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:27:17 +01:00
Artturin
e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00
Philip Taron
f8967b46f6 luajit: remove with lib statement 2024-08-18 06:31:15 -07:00
Matthieu C.
665f3f694b lua: take into propagated-build-inputs when building LUA_PATH
so far we ignored propagated-build-inputs
2024-06-12 15:31:04 +02:00
Matthieu C.
6427d04c23 lua:: reworked setup-hook to source utils.sh
which contains lua shell utilities that can be reused during the
creation of an environment.
Makes sense because the generation of LUA_PATH is a bit different than
other ecosystems.
2024-05-01 00:18:44 +02:00
Matthieu Coudron
640cdcb814 lua: smarter/more correct patching
In order to have the 'reset' LUA_PATH (aka `;;`) work, and for purity
reasons(removing /usr paths) we(I) decided to patch the lua interpreters default LUA_PATH.
Turns out the interpreters have different defaults and the patch was too
coarse.
There is smarter patching that can be done via LUA_ROOT.

Also luajit doesn't need patching at all since LUA_ROOT is set via the
build system.
2024-03-16 14:37:09 +01:00
Matthieu Coudron
79245fc3e7 lua: use finalAttrs for interpreters (#264381) 2023-11-23 10:19:14 +01:00
Luka Blaskovic
01901b6df5 luajit: add optional arg enableRegisterAllocationRandomization
https://github.com/LuaJIT/LuaJIT/issues/1062#issuecomment-1698272269
2023-09-04 08:19:06 +00:00
Jeremy Parker
69946ea4cf luajit: set BUILDMODE flag for static builds 2023-07-09 17:19:27 +10:00
Felix Buehler
6672dde558 treewide: use optionalAttrs instead of 'else {}' 2023-06-25 11:01:34 -03:00
Artturin
f9fdf2d402 treewide: move NIX_CFLAGS_COMPILE to the env attrset
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper

this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
2023-02-22 21:23:04 +02:00
Karel Kočí
af2839518e luajit: fix cross build for 32 bit architectures
The 32bit compiler has to be used when building on 64bit system.
2023-01-30 09:54:34 +01:00
Adam Joseph
c031cc5bf1 luajit: add powerpc64le-linux to badPlatforms 2023-01-06 16:03:23 +01:00
Arnout Engelen
af0b453724 Merge pull request #208103 from raboof/neovim-reproducible
neovim: make the build reproducible
2023-01-05 13:17:38 +01:00
Arnout Engelen
90c4a2ebc3 neovim: make the build reproducible
This introduces a patch that improves binary reproducibility since changes in
ordering of the generated code indeed cause changes in the compiled code.

Additionally, since neovim embeds luajit-compiled bytecode into the nvim binary,
we are impacted by https://github.com/LuaJIT/LuaJIT/issues/626 . It is possible
to switch to lua 5.1, but that'd be a regression (luajit has much better
performance and some plugins depend on it, like for example Noice and Lazy).
Disabling `COMPILE_LUA` at build time would cause a runtime penalty each time
neovim starts. Instead, we run luagit with those security settings disabled for
the build-time code generation.

(Note to self: for a minimized testcase this seemed to help at
975ec13f5d5aefcac1dbb15fa867e660e07c93a1 but no longer at
03080b795aa3496ed62d4a0697c9f4767e7ca7e5 of luajit, which is surprising since
that commit doesn't look super relevant. _Also_ surprisingly it does seem to
work in the context of the neovim code generation, though, so that might be
good enough...)

Also, some of the code generation (using mpack and tables) still relies on
stable table ordering. This should eventually be fixed, but as a workaround
we use the luajit-with-stable-string-ids for those generators as well.

Fixes #207841
2023-01-01 15:50:12 +01:00
Sandro Jäckel
56acc4566e luajit_openresty: init at 2.1-20220915 2022-12-26 02:57:06 +01:00
Sandro Jäckel
b374880027 interpreters/lua: replace sourceVersion with lib.versions 2022-12-22 05:14:31 +01:00
Jörg Thalheim
2a694d7ba2 luajit: mark as broken on riscv64 2022-11-20 13:51:41 +01:00
Artturin
39571bd6fa luaPackages: copy passthruFun from python 2022-08-26 20:55:30 +03:00
Artturin
ec35f6341b lua-packages: try splicing 2022-08-26 20:04:02 +03:00
Luka Blaskovic
ce8dab1b44 luajit: 2.0.5-2021-10-02, 2.1.0-2021-10-27 -> 2.0.5-2022-03-13, 2.1.0-2022-04-05
* switch to SRI hashes
2022-04-13 06:33:05 +00:00
Andreas Rammhold
31e5b8dc21 Remove myself from maintainers
I don't have time and energy to deal with all of this anymore.
2022-01-20 00:24:52 +01:00
Luka Blaskovic
90a564a133 luajit_2_1: 2.1.0-2021-08-12 -> 2.1.0-2021-10-27 2021-11-07 07:38:21 +00:00
Matthieu Coudron
88842910b5 lua: introduced a lua lib
Goal is to improve separation between packages and utilities.
Can help with autocompletion/navigate nixpkgs faster.
Also it will help standardize how LUA_PATH is exported across packages,
so that one can more easily make lua changes across nixpkgs (for
    instance changing where lua modules are installed).
2021-09-12 03:03:56 +02:00
Luka Blaskovic
9634784777 luajit: disable unwind external on aarch64-darwin
see: https://github.com/LuaJIT/LuaJIT/issues/698
2021-08-26 09:15:32 +00:00
Luka Blaskovic
a15ee4845b luajit: format with nixpkgs-fmt 2021-08-25 10:35:49 +00:00
Luka Blaskovic
d5fe0d2b6e Revert "luajit_openresty: init"
This reverts commit 0b467dfa95.
2021-08-25 10:33:56 +00:00
Gregory Anders
0b467dfa95 luajit_openresty: init 2021-08-19 05:52:24 -06:00
Ben Siraphob
001c0cbe54 pkgs/development/interpreters: stdenv.lib -> lib 2021-01-23 20:29:03 +07:00
Luka Blaskovic
351bf9584e luajit_2_1: 2.1.0-2020-08-27 -> 2.1.0-2020-09-30 2020-10-01 08:22:27 +00:00
Luka Blaskovic
3fcd7415a7 luajit_2_0, luajit_2_1: 2.1.0-2020-03-20 -> 2.1.0-2020-08-05 2020-08-06 13:37:14 +00:00
Luka Blaskovic
b67cbe5a2d luajit_2_0, luajit_2_1: bump to 2020-03-20, GC64 mode switch 2020-04-27 07:42:21 +00:00
Michael Reilly
84cf00f980 treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Alexei Robyn
e34db5a568 luajit: Expose build options, enable JIT debug module 2020-02-15 18:40:02 +01:00
Vladimír Čunát
9e0f698a49 luajit_2_0: fix the platforms/extraMeta 2019-10-13 14:07:01 +02:00
volth
f3282c8d1e treewide: remove unused variables (#63177)
* treewide: remove unused variables

* making ofborg happy
2019-06-16 19:59:05 +00:00
Vladimír Čunát
5ddfa4183a luajit: fix cross-compilation, partially
Also clean the expression a bit.
2019-02-21 12:16:04 +01:00
Matthieu Coudron
c4519cf8a6 lua: add withPackages function (#54460)
* lua: add withPackages function

First step towards more automation similar to the haskell backend.
Follow up of https://github.com/NixOS/nixpkgs/pull/33903
2019-01-30 14:13:15 +00:00
volth
52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
Silvan Mosberger
02f11bca60 some overrideDerivation cleanups
These four top-level packages were the only ones that didn't have the
meta.position attribute automagically set. This commit fixes this.
2018-06-14 22:28:55 +02:00
Orivej Desh
b00c65103d luajit: symlink missing lua.hpp 2017-11-27 16:14:18 +00:00