diff options
Diffstat (limited to 'pkgs/os-specific/bsd/openbsd/default.nix')
-rw-r--r-- | pkgs/os-specific/bsd/openbsd/default.nix | 69 |
1 files changed, 55 insertions, 14 deletions
diff --git a/pkgs/os-specific/bsd/openbsd/default.nix b/pkgs/os-specific/bsd/openbsd/default.nix index bfc88f097865f..4db2df57bc262 100644 --- a/pkgs/os-specific/bsd/openbsd/default.nix +++ b/pkgs/os-specific/bsd/openbsd/default.nix @@ -1,5 +1,7 @@ { lib, + crossLibcStdenv, + stdenvNoCC, makeScopeWithSplicing', generateSplicesForMkScope, buildPackages, @@ -19,32 +21,71 @@ makeScopeWithSplicing' { directory = ./pkgs; } // { - libc = self.callPackage ./pkgs/libc/package.nix { + version = "7.5"; + + stdenvLibcMinimal = crossLibcStdenv.override (old: { + cc = old.cc.override { + libc = self.libcMinimal; + noLibc = false; + bintools = old.cc.bintools.override { + libc = self.libcMinimal; + noLibc = false; + sharedLibraryLoader = null; + }; + }; + }); + + makeMinimal = buildPackages.netbsd.makeMinimal.override { inherit (self) make-rules; }; + + # The manual callPackages below should in principle be unnecessary, but are + # necessary. See note in ../netbsd/default.nix + + include = self.callPackage ./pkgs/include/package.nix { + inherit (buildOpenbsd) makeMinimal; + inherit (buildPackages.netbsd) install rpcgen mtree; + }; + + csu = self.callPackage ./pkgs/csu.nix { + inherit (self) include; + inherit (buildOpenbsd) makeMinimal; + inherit (buildPackages.netbsd) install; + }; + + libcMinimal = self.callPackage ./pkgs/libcMinimal/package.nix { inherit (self) csu include; inherit (buildOpenbsd) makeMinimal; inherit (buildPackages.netbsd) install gencat + tsort rpcgen + ; + }; + + librpcsvc = self.callPackage ./pkgs/librpcsvc.nix { + inherit (buildOpenbsd) openbsdSetupHook makeMinimal lorder; + inherit (buildPackages.netbsd) + install tsort + statHook + rpcgen ; }; - makeMinimal = buildPackages.netbsd.makeMinimal.override { inherit (self) make-rules; }; + + libutil = self.callPackage ./pkgs/libutil.nix { + inherit (self) libcMinimal; + inherit (buildOpenbsd) openbsdSetupHook makeMinimal lorder; + inherit (buildPackages.netbsd) install tsort statHook; + }; + + lorder = self.callPackage ./pkgs/lorder.nix { inherit (buildPackages.netbsd) install; }; + + make-rules = self.callPackage ./pkgs/make-rules/package.nix { }; + mkDerivation = self.callPackage ./pkgs/mkDerivation.nix { - inherit (buildPackages.netbsd) install; + inherit (buildPackages.netbsd) install tsort; inherit (buildPackages.buildPackages) rsync; }; - include = self.callPackage ./pkgs/include/package.nix { - inherit (buildOpenbsd) makeMinimal; - inherit (buildPackages.netbsd) install rpcgen mtree; - }; - csu = self.callPackage ./pkgs/csu.nix { - inherit (self) include; - inherit (buildOpenbsd) makeMinimal; - inherit (buildPackages.netbsd) install; - }; - make-rules = self.callPackage ./pkgs/make-rules/package.nix { }; - lorder = self.callPackage ./pkgs/lorder.nix { inherit (buildPackages.netbsd) install; }; } ); } |