Commit Graph

70 Commits

Author SHA1 Message Date
Robert Scott
4e49c5d2e3 libffi: disable fortify3 hardening for tests
using the same odd mechanism as is used to disable fortify
mid-build
2023-01-24 21:52:14 +00:00
Guillaume Girol
33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00
figsoda
a211d94291 treewide: remove attrPath from nix-update-script calls
after https://github.com/Mic92/nix-update/pull/120 and https://github.com/NixOS/nixpkgs/pull/207703, `attrPath` can now be omitted when using `nix-update-script`
2022-12-26 12:39:21 -05:00
Rick van Schijndel
9833d56c24 treewide: mark packages broken that never built on PLATFORM
Done with the help of https://github.com/Mindavi/nixpkgs-mark-broken
Tool is still WIP but this is one of the first results.

I manually audited the results and removed some results that were not valid.

Note that some of these packages maybe should have more constrained platforms set
instead of broken set, but I think not being perfectly correct is better than
just keep trying to build all these things and never succeeding.

Some observations:

- Some darwin builds require XCode tools
- aarch64-linux builds sometimes suffer from using gcc9
  - gcc9 is getting older and misses some new libraries/features
- Sometimes tools try to do system detection or expect some explicit settings for
  platforms that are not x86_64-linux
2022-12-13 21:40:12 +01:00
Sergei Trofimovich
17865edc9a libffi: 3.4.3 -> 3.4.4
Changes: https://github.com/libffi/libffi/releases/tag/v3.4.4

    3.4.4 Oct-23-2022
    Important aarch64 fixes, including support for linux builds
      with Link Time Optimization (-flto).
    Fix x86 stdcall stack alignment.
    Fix x86 Windows msvc assembler compatibility.
    Fix moxie and or1k small structure args.

While at it added trivial updater.
2022-10-26 08:24:30 +01:00
Sergei Trofimovich
62dc18c5bc libffi: 3.4.2 -> 3.4.3
Mostly bug fixes and new architectures support.

While at it dropped upstream libffi-powerpc64.patch.

Changes: https://github.com/libffi/libffi/releases/tag/v3.4.3
2022-09-19 20:05:38 +01:00
Vladimír Čunát
c605c54a7e
Merge #151065: libffi: Pass --build and --host to configure
...into staging
2022-06-23 09:58:27 +02:00
Zhaofeng Li
8807cab81b libffi: Pass --build and --host to configure script
Without this, building `libffi` would do something horrible when
natively targeting `armv5tel-linux` on an `aarch64-linux` machine using the
32-bit compatibility sub-mode:

```
$ nix-build --system armv5tel-linux -A libffi --check
[...]
checking build system type... aarch64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking target system type... aarch64-unknown-linux-gnu
[...]

$ file result/lib/libffi.so.8.1.0
result/lib/libffi.so.8.1.0: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, not stripped

$ nm result/lib/libffi.so.8.1.0 | grep ffi_call
         U ffi_call
```

Correct arch-specific code wouldn't be built at all, with the resulting binary subtly broken.
2022-06-06 21:34:52 -07:00
Sergei Trofimovich
55886c3946 pkgsCross.ppc64.libffi: pull upstream patch to support gcc-12
Without the change `libffi` fails to build against `gcc-12` as:

    libtool: compile:  powerpc64-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I. -I../include -Iinclude \
        -I../src -O3 -fomit-frame-pointer -fstrict-aliasing -ffast-math -Wall -fexceptions -c ../src/tramp.c \
        -fPIC -DPIC -o src/.libs/tramp.o
    ../src/powerpc/linux64_closure.S: Assembler messages:
    ../src/powerpc/linux64_closure.S:363: Error: unrecognized opcode: `lvx'

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-06-02 22:44:25 +01:00
Artturin
1d44ac176c treewide: add enableParallelBuilding's to bootstrap packages so hashes stay the same
when enableParallelBuildingByDefault is enabled

verified with
`nix-diff $(nix eval ".#gcc-unwrapped.drvPath") $(nix eval --expr 'with import ./. { config = { enableParallelBuildingByDefault = true; }; }; gcc-unwrapped.drvPath' --impure)`
2022-05-25 16:03:14 +03:00
github-actions[bot]
574f2d4696
Merge staging-next into staging 2022-05-24 00:02:57 +00:00
sternenseemann
c6cbef9aec libffi: disable tests if linked statically
TCL 8.6 which dejagnu requires can't be linked statically.
2022-05-23 21:25:04 +02:00
Artturin
f002ffed9a treewide: enable strictDeps in bootstrap packages 2022-05-22 16:40:26 +03:00
Janne Heß
c911240e9c
Revert "Add mingwW64-llvm cross-system." 2022-05-18 13:50:23 +02:00
Shea Levy
b08eed0cbc
libffi: Fix build for Windows with lld 2022-05-09 10:10:44 -04:00
Shea Levy
f4d5830001
libffi: autoreconf on Windows for libtool fix 2022-05-09 10:09:57 -04:00
Armeen Mahdian
0558cb24cd libffi_3_3: init 2022-05-05 09:16:05 -05:00
Zhaofeng Li
cb955555df libffi: Run test suite 2021-12-16 20:44:56 -08:00
Ryan Burns
c05fbdb068 libffi: disable new static trampolines feature 2021-08-13 14:23:09 -07:00
Joerie de Gram
d4aeb9634a libffi: 3.3 -> 3.4.2 2021-07-29 10:50:44 +02:00
Felix Buehler
3c12e95ad1 development: /s/name/pname&version/ 2021-06-30 09:45:11 +02:00
Ben Siraphob
66e44425c6 pkgs/development/libraries: stdenv.lib -> lib 2021-01-21 19:11:02 -08:00
Matthew Bauer
d0677e6d45 treewide: add warning comment to “boot” packages
This adds a warning to the top of each “boot” package that reads:

  Note: this package is used for bootstrapping fetchurl, and thus cannot
  use fetchpatch! All mutable patches (generated by GitHub or cgit) that
  are needed here should be included directly in Nixpkgs as files.

This makes it clear to maintainer that they may need to treat this
package a little differently than others. Importantly, we can’t use
fetchpatch here due to using <nix/fetchurl.nix>. To avoid having stale
hashes, we need to include patches that are subject to changing
overtime (for instance, gitweb’s patches contain a version number at
the bottom).
2020-07-31 08:56:53 +02:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Jörg Thalheim
55d24ae823
libffi: fix musl tests
Tests do not compile on musl, also alpine seems not to run tests.
2020-03-19 15:29:08 +00:00
Luka Blaskovic
be3e7b4f44 libffi: only run tests on musl targets
Python3 is now needed for for glibc build which pulls libffi,
so I suppose libffi is now part of stdenv on linux with glibc
as on darwin.
2020-01-14 09:05:59 +00:00
Matthew Bauer
7c1539baa6 libffi: update meta
- add myself as maintainer
- license is mit
2019-12-02 16:23:49 -05:00
Matthew Bauer
53a04a2df0 libffi: 3.2.1 -> 3.3 2019-12-02 16:21:09 -05:00
Daniel Schaefer
bac4d95aa2 treewide: Change URLs to HTTPS
Lots of URLs were HTTP redirect to HTTPS. Changed those and checked them
if there's actual content. Inspired by
https://github.com/NixOS/nixpkgs/issues/60004
2019-04-22 10:19:54 +02:00
Benjamin Hipple
08c75aaedc libffi: swap src URL from FTP to HTTPS
HTTPS is never worse and often better than FTP, since it's faster, more secure,
and more likely to be accessible through firewalls.

This does not change the tarball sha, as confirmed by `nix-prefetch-url`.
2018-12-03 22:10:29 +00:00
John Ericson
0828e2d8c3 treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
2018-08-30 17:20:32 -04:00
Frederik Rietdijk
099c13da1b Merge staging-next into master (#44009)
* substitute(): --subst-var was silently coercing to "" if the variable does not exist.

* libffi: simplify using `checkInputs`

* pythonPackges.hypothesis, pythonPackages.pytest: simpify dependency cycle fix

* utillinux: 2.32 -> 2.32.1

https://lkml.org/lkml/2018/7/16/532

* busybox: 1.29.0 -> 1.29.1

* bind: 9.12.1-P2 -> 9.12.2

https://ftp.isc.org/isc/bind9/9.12.2/RELEASE-NOTES-bind-9.12.2.html

* curl: 7.60.0 -> 7.61.0

* gvfs: make tests run, but disable

* ilmbase: disable tests on i686. Spooky!

* mdds: fix tests

* git: disable checks as tests are run in installcheck

* ruby: disable tests

* libcommuni: disable checks as tests are run in installcheck

* librdf: make tests run, but disable

* neon, neon_0_29: make tests run, but disable

* pciutils: 3.6.0 -> 3.6.1

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/pciutils/versions.

* mesa: more include fixes

mostly from void-linux (thanks!)

* npth: 1.5 -> 1.6

minor bump

* boost167: Add lockfree next_prior patch

* stdenv: cleanup darwin bootstrapping

Also gets rid of the full python and some of it's dependencies in the
stdenv build closure.

* Revert "pciutils: use standardized equivalent for canonicalize_file_name"

This reverts commit f8db20fb3a.
Patching should no longer be needed with 3.6.1.

* binutils-wrapper: Try to avoid adding unnecessary -L flags

(cherry picked from commit f3758258b8895508475caf83e92bfb236a27ceb9)
Signed-off-by: Domen Kožar <domen@dev.si>

* libffi: don't check on darwin

libffi usages in stdenv broken darwin. We need to disable doCheck for that case.

* "rm $out/share/icons/hicolor/icon-theme.cache" -> hicolor-icon-theme setup-hook

* python.pkgs.pytest: setupHook to prevent creation of .pytest-cache folder, fixes #40273

When `py.test` was run with a folder as argument, it would not only
search for tests in that folder, but also create a .pytest-cache folder.
Not only is this state we don't want, but it was also causing
collisions.

* parity-ui: fix after merge

* python.pkgs.pytest-flake8: disable test, fix build

* Revert "meson: 0.46.1 -> 0.47.0"

With meson 0.47.0 (or 0.47.1, or git)
things are very wrong re:rpath handling
resulting in at best missing libs but
even corrupt binaries :(.

When we run patchelf it masks the problem
by removing obviously busted paths.
Which is probably why this wasn't noticed immediately.

Unfortunately the binary already
has a long series of paths scribbled
in a space intended for a much smaller string;
in my testing it was something like
lengths were 67 with 300+ written to it.

I think we've reported the relevant issues upstream,
but unfortunately it appears our patches
are what introduces the overwrite/corruption
(by no longer being correct in what they assume)

This doesn't look so bad to fix but it's
not something I can spend more time on
at the moment.

--

Interestingly the overwritten string data
(because it is scribbled past the bounds)
remains in the binary and is why we're suddenly
seeing unexpected references in various builds
-- notably this is is the reason we're
seeing the "extra-utils" breakage
that entirely crippled NixOS on master
(and probably on staging before?).

Fixes #43650.

This reverts commit 305ac4dade.

(cherry picked from commit 273d68eff8)
Signed-off-by: Domen Kožar <domen@dev.si>
2018-07-24 15:04:48 +01:00
Orivej Desh
024871718d libffi: fix check
(cherry picked from commit 13b80d7805ef11db1a3d1511171cee378f0a692f)
2018-05-30 02:07:50 +00:00
Shea Levy
48283de641
libffi: Add RISC-V patch. 2018-02-24 17:59:00 -05:00
Will Dietz
3b9e99ddae libffi: add patch to fix w/musl
also use patches from OE, fix musl softfloat build
2018-02-13 09:44:42 -06:00
Tuomas Tynkkynen
65445212df libffi: Add aarch64 patch
This fixes pythonPackages.cffi test suite failure.
2017-09-15 23:55:50 +03:00
Tuomas Tynkkynen
1ff422aa23 treewide: Add man & info outputs where necessary (instead of doc)
Because man & info pages won't be going to $doc after the next commit.
Scripted change for the files having one-package-per-file.
2017-08-11 21:32:54 +03:00
hsloan
5a21bb6917 libffi: Don't use stdenv ? cross 2017-06-28 19:34:03 -04:00
Tuomas Tynkkynen
a17216af4c treewide: Shuffle outputs
Make either 'bin' or 'out' the first output.
2016-08-29 14:49:51 +03:00
Vladimír Čunát
f9f6f41bff Merge branch 'master' into closure-size
TODO: there was more significant refactoring of qtbase and plasma 5.5
on master, and I'm deferring pointing to correct outputs to later.
2015-12-31 09:53:02 +01:00
Vladimír Čunát
82a21ccaf7 libffi: refactor meta 2015-12-17 14:45:46 +01:00
Vladimír Čunát
5a129a8121 libffi: doCheck optionally and do so for glib-tested
This is kind-of reverting fcf99efcd.
2015-12-17 14:45:46 +01:00
Vladimír Čunát
32a5deb455 libffi: fixup libffi.pc, and refactor 2015-10-03 17:07:49 +02:00
Tuomas Tynkkynen
4be9702fe0 libffi: Don't manually move lib64 stuff
It breaks the i686 build. TODO: test that this doesn't break x86_64 ;)
2015-10-03 14:08:50 +02:00
Vladimír Čunát
5227fb1dd5 Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
2015-10-03 13:33:37 +02:00
Eelco Dolstra
fcf99efcd2 Reduce dependency bloat 2015-06-11 00:26:24 +02:00
Marko Durkovic
2904aa33bb cygwin: libffi 2015-05-28 10:53:36 +02:00
Vladimír Čunát
bf414c9d4f Merge 'staging' into closure-size
- there were many easy merge conflicts
- cc-wrapper needed nontrivial changes

Many other problems might've been created by interaction of the branches,
but stdenv and a few other packages build fine now.
2015-04-18 11:22:20 +02:00
William A. Kennington III
47fe162bb9 libffi: 3.0.13 -> 3.2.1 2015-03-26 16:12:24 -07:00
codyopel
e29b0da9c7 remove stdenv.isBSD 2015-02-24 22:15:51 -05:00