about summary refs log tree commit diff
path: root/pkgs/os-specific/bsd
AgeCommit message (Collapse)AuthorFilesLines
2024-01-02freebsd.libc: fix build with LLVM 16+Ryan Burns1-0/+4
2023-12-27netbsd.libcurses: fix eval around NIX_CFLAGS_COMPILESergei Trofimovich1-2/+2
Without the change the eval fails as: $ nix build --no-link -f. netbsd.libcurses ... … while evaluating attribute 'NIX_CFLAGS_COMPILE' of derivation 'libcurses-netbsd-9.2' error: value is a string while a list was expected
2023-11-20netbsd.sys: patch nocombreloc linker flagAstro1-2/+7
2023-11-20netbsd.sys: make compiler and linker warnings non-fatalAstro1-1/+11
2023-08-14treewide: use uncurried version of makeScopeWithSplicingAdam Joseph2-15/+13
2023-08-03treewide: noop: refer to `src.name` or similar in `sourceRoot` where ↵Jan Malakhovski1-1/+1
appropriate, part 1: trivial cases
2023-07-25netbsd.compat: use strip from cctools-portRandy Eckenrode1-1/+1
llvm-strip does not support `-X` for Mach-O, so make sure the cctools version is used.
2023-02-22treewide: env.NIX_CFLAGS_COMPILE use optionalString instead of optionalArtturin1-1/+1
env values must be strings
2023-02-22treewide: move NIX_CFLAGS_COMPILE to the env attrsetArtturin2-9/+9
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-22treewide: use toString on list NIX_CFLAGS_COMPILEArtturin1-5/+5
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
2023-01-23Merge master into staging-nextgithub-actions[bot]1-1/+2
2023-01-22libiconv: use libc header on NetBSDAlyssa Ross1-1/+2
Let's be consistent about this. Updated netbsd.libc to have a pname attribute so it's compatible with libcIconv.
2023-01-18Merge pull request #210764 from alyssais/mtdev-freebsdJohn Ericson2-1/+76
mtdev: add FreeBSD support
2023-01-15evdev-proto: init at 6.0Alyssa Ross2-1/+70
FreeBSD implements Linux's evdev API, but doesn't come with headers for it. Instead, the Linux headers are just modified to be suitable for FreeBSD, via a port called evdev-proto. I don't want to copy the complicated sed expressions from the port into Nixpkgs, so instead we just build and install the port inside a Nix derivation.
2023-01-14freebsd.sed: init at 13.1.0Alyssa Ross1-0/+6
2023-01-13netbsd.libpci: init at 9.2Alyssa Ross1-0/+10
2023-01-13netbsd.libarch: init at 9.2Alyssa Ross1-0/+7
2022-12-25treewide: use splicing convenience functionsArtturin2-29/+9
2022-11-04freebsd packages: Init at 13.1John Ericson14-0/+1157
Always set `SRCTOP`, set it with abs path llvmPackages: Bump minimum version for FreeBSD llvmPackages_*, libgcc, compiler_rt: Hack in enough libs that one can compiler C freebsd.compat: Rename some things to work around cc-wrapper change 0bea4a194f7103fcedc0226a74e50657875a7c4d / #191724 in particular
2022-10-19Merge branch 'master' into staging-nextJan Tojnar1-0/+1
; Conflicts: ; pkgs/development/tools/codespell/default.nix codespell 2.2.2 switched to pyproject & setuptools_scm: https://github.com/codespell-project/codespell/pull/2523
2022-10-19pkgsMusl.netbsd.install: fix build (#196260)Yureka1-1/+5
2022-10-17netbsd.uudecode: fix build on darwinRyan Burns1-0/+1
Requires explicit link to libresolv
2022-10-06bsd: `BSD_PATH` rename to `COMPONENT_PATH`John Ericson2-14/+14
@alyssais and I agreed this is clearer.
2022-10-06netbsd.install: Use `writeShellScript`John Ericson1-3/+2
2022-10-06netbsd: Adapt to BSD-common infra changes for FreeBSDJohn Ericson9-33/+41
See https://github.com/NixOS/nixpkgs/pull/82131 for the rest of the changes for FreeBSD. This is PRed separately because it is a macOS moderate rebuild so we target staging. The main change is that we CD to the path we're building *after* applying patches, so we can patch other parts of the tree (from `extraPaths`) as needed. Another change is that `netbsd.install` no longer depends on `fts`, which it evidently no longer needs.
2022-10-03netbsd.libc: fix buildAlyssa Ross1-1/+1
This has been broken since we made -fno-common the default.
2022-01-06netbsd.compat: don't use musl's sys/cdefs.hAlyssa Ross1-0/+6
When building glib statically, a Meson check would fail, because the check would interpret any warning as failure, and it would see the warning that the musl sys/cdefs.h emits about the file being deprecated.
2022-01-06pkgsStatic.netbsd: fix nbtool_config.h conflictsAlyssa Ross2-2/+11
In pkgsStatic, /all/ build inputs are propagated. This means that netbsd.compat was propagated, along with its setup hook, which broke static glib builds because glib defines a function with the same name as one in nbtool_config.h, and nbtool_config.h was being automatically included in every C file processed by the compiler, in any transitive dependent of netbsd.compat's setup hook. To fix this, rather than forcing nbtool_config.h to be included for _every_ C file in a derivation that depends on netbsd.compat, modify the NetBSD-specific mkDerivation to detect files that need the header, and patch it in there where appropriate. That way, only files that are part of NetBSD will be affected, not all transitive dependents.
2021-12-10os-specific/netbsd: fix mandoc splicingRyan Burns1-1/+1
This expression is not properly spliced, so we need to manually specify buildPackages so that mandoc will not be built for the host platform Fixes cross-compilation of netbsd.* packages that depend on mandoc in nativeBuildInputs, such as `getent`.
2021-11-15netbsd.man: fix buildsternenseemann1-1/+9
* Fails because it's missing ps2pdf. In the beginning I fixed this by providing ghostscript as a nativeBuildInput, but the PDF created for man0 doesn't appear to be installed, so we can just patch out the call to the tool. * We need to disable MKRUMP or provide sys/rump/share/man in sourceRoot, opted for the former since it's simpler at the moment, but the latter is also possible with a custom unpackPhase.
2021-11-09netbsd: add missing rsync native build inputsAlyssa Ross1-3/+3
Using extraPaths in NetBSD packages now requires rsync, but the rsync dependency wasn't added to all the packages using extraPaths that override nativeBuildInputs, so they'd just fail immediately. Fixes: 75db7f8eb04 ("netbsd: Use rsync to speed up source merging")
2021-09-22netbsd.compat: fix libs by using cctools strip as objcopyRyan Burns1-2/+6
Reverts d43df749ac4779cdb3f53146c8c1ef66b4f33e33 NetBSD makefiles strip local symbols from libs using `OBJCOPY?=objcopy`, which is missing on macOS. GNU objcopy appears to succeed but produces broken .a libs which do not link into dependers. (As this issue does not fail the netbsd.compat build, downstream netbsd.install is added to passthru.tests.) Since `OBJCOPY` is only used for stripping, we can: * skip stripping with the hacky `OBJCOPY=echo` * use cctools strip, which is invoked in the same way The latter is obviously preferable if it works. Indeed, locals are stripped, although it doesn't affect size much. Comparison: `OBJCOPY=echo`: ``` $ du -b result/lib/*.a 347784 result/lib/libnbcompat.a 357120 result/lib/libnbcompat_p.a ``` `OBJCOPY=${cctools}/bin/strip`: ``` $ du -b result/lib/*.a 347008 result/lib/libnbcompat.a 357120 result/lib/libnbcompat_p.a ```
2021-09-19netbsd.compat: fix build on darwinRyan Burns1-0/+2
The makefile requires GNU objcopy
2021-09-03netbsd: Make hard/soft float match systems settingsJohn Ericson2-13/+25
2021-09-03netbsd.compat: Fix cross compilationJohn Ericson6-20/+204
Not to netbsd, where it isn't needed, but elsewhere. A few things going on here: - Make compat use the "regular" not "host" makefile infra. This, however, makes more assumptions that the toolchain is BSD-like, and so we need to compensate for them with the likes of: - `LORDER=...` and `TSORT=...` - Move `export INSTALL_*` to install's setup hook so they don't interfere with coreutils install - Don't use `DESTDIR` for installing include files, instead set `INCSDIR`. This is more proper, but doesn't work when `INCSDIR` is set multiple times, unfortunately, as CLI defs override all other assignments. So instead set `INCSDIR0` on the CLI, and do some `INCSDIR = ${INCSDIR0}/...` in the relevant packages. - `INCSDIR` is set just in the NetBSD setup hook because FreeBSD uses `INCLUDEDIR`.
2021-09-03netbsd.compat: Don't configure twiceJohn Ericson3-1/+35
2021-07-11netbsd: Split out path merging from bsd setup hookJohn Ericson3-23/+34
I plan on doing the sources for FreeBSD differently. Indeed we might want to change this for NetBSD too eventually. In any event, the way we manage sources is not intrinsically the same across BSDs so it makes sense to pull this out.
2021-07-10netbsd: Use rsync to speed up source mergingJohn Ericson2-16/+19
The find -exec that was there before is quite slow on my machine. This is much faster.
2021-06-10Merge staging-next into staginggithub-actions[bot]1-0/+4
2021-06-09netbsd: add aliases for i486 and i586ash lea1-0/+4
2021-06-07Merge staging-next into staginggithub-actions[bot]1-0/+2
2021-06-06netbsd: disable stack protection on i686Alyssa Ross1-0/+2
Builds fail otherwise, because the linker can't find the stack protector symbols.
2021-05-31Merge staging-next into staginggithub-actions[bot]1-2/+2
2021-05-31netbsdCross.ld_elf_so: use same stage's libcAlyssa Ross1-2/+2
We need netbsdCross.ld_elf_so to be the dynamic linker in cross netbsd's bintools, but netbsdCross doesn't have a libc in stdenv. So instead, use netbsdCross.libc for netbsdCross.ld_elf_so.
2021-05-26netbsd: 9.1 -> 9.2Alyssa Ross1-61/+61
2021-05-09netbsd: 8.0 -> 9.1Alyssa Ross2-92/+121
Notes: - compat: Needs a header from common merged with it's wrapper. - librt: Needs the jemalloc sources. - libc: install libc_pic.a This was the behaviour on NetBSD 8.0, and ld.elf_so (in its current configuration) requires it. We could also have disabled PIC in ld.elf_so. - sys: fix build We use a more recent version of binutils than NetBSD 9.1 does, so we need to backport a patch from CURRENT. Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems>
2021-05-06Merge remote-tracking branch 'upstream/staging-next' into stagingJohn Ericson1-1/+2
2021-05-01netbsd.libedit: fix buildAlyssa Ross1-0/+2
2021-04-30netbsd.libcurses: fix buildAlyssa Ross1-0/+1
2021-04-23Merge pull request #120283 from Ericson2314/netbsd-fewer-varsJohn Ericson1-9/+4
netbsd: Remove some env vars that are probably not needed.