summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2019-10-23 11:49:56 (GMT)
committerEelco Dolstra <edolstra@gmail.com>2019-10-23 11:50:44 (GMT)
commitac07356b08595f288c5d01eff4bd7d342c8d7ff7 (patch)
tree227f1338b9464c53a664319ae1b4456275ac2a5c
parent8cc2d64444b0946abb0009058865cd46165b69c4 (diff)
downloadpatchelf-ac07356b08595f288c5d01eff4bd7d342c8d7ff7.zip
patchelf-ac07356b08595f288c5d01eff4bd7d342c8d7ff7.tar.gz
patchelf-ac07356b08595f288c5d01eff4bd7d342c8d7ff7.tar.bz2
flake.nix: Support multiple platforms
-rw-r--r--flake.lock6
-rw-r--r--flake.nix45
2 files changed, 30 insertions, 21 deletions
diff --git a/flake.lock b/flake.lock
index 70a433b..00639c7 100644
--- a/flake.lock
+++ b/flake.lock
@@ -2,9 +2,9 @@
"inputs": {
"nixpkgs": {
"inputs": {},
- "narHash": "sha256-HGlE2VNbdEjCP76hWAS72kHBlMWhpvqWo58Obg1Vy6s=",
- "originalUri": "nixpkgs",
- "uri": "github:edolstra/nixpkgs/13e1bce51f4aebdf3db58ce8c4a93e904a272bff"
+ "narHash": "sha256-yfhWbT0TL6NiCc5lCXauGsImnpDFNHV7ngjyUYrm6CY=",
+ "originalUrl": "nixpkgs",
+ "url": "github:edolstra/nixpkgs/d4a07f018e707b31a0eb7aff3f2838d01d53a0df"
}
},
"version": 3
diff --git a/flake.nix b/flake.nix
index e69412a..bc24bf4 100644
--- a/flake.nix
+++ b/flake.nix
@@ -3,30 +3,39 @@
description = "A tool for modifying ELF executables and libraries";
- outputs = { self, nixpkgs }: rec {
+ outputs = { self, nixpkgs }:
- overlay = final: prev: {
+ let
+ supportedSystems = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
+ forAllSystems = f: nixpkgs.lib.genAttrs supportedSystems (system: f system);
+ in
- patchelf-new = final.stdenv.mkDerivation {
- name = "patchelf-${hydraJobs.tarball.version}";
- src = "${hydraJobs.tarball}/tarballs/*.tar.bz2";
- };
+ rec {
- };
+ overlay = final: prev: {
- hydraJobs = import ./release.nix {
- patchelfSrc = self;
- nixpkgs = nixpkgs;
- };
+ patchelf-new = final.stdenv.mkDerivation {
+ name = "patchelf-${hydraJobs.tarball.version}";
+ src = "${hydraJobs.tarball}/tarballs/*.tar.bz2";
+ };
- checks.build = hydraJobs.build.x86_64-linux;
+ };
- packages.patchelf = (import nixpkgs {
- system = "x86_64-linux";
- overlays = [ self.overlay ];
- }).patchelf-new;
+ hydraJobs = import ./release.nix {
+ patchelfSrc = self;
+ nixpkgs = nixpkgs;
+ };
+
+ checks = forAllSystems (system: {
+ build = hydraJobs.build.${system};
+ });
- defaultPackage = packages.patchelf;
+ defaultPackage = forAllSystems (system:
+ (import nixpkgs {
+ inherit system;
+ overlays = [ self.overlay ];
+ }).patchelf-new
+ );
- };
+ };
}