Skip to content
This repository was archived by the owner on Feb 6, 2024. It is now read-only.

Commit c336281

Browse files
committed
surveyor: clean up build
1 parent f109293 commit c336281

File tree

3 files changed

+26
-22
lines changed

3 files changed

+26
-22
lines changed

infra/surveyor/Makefile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,8 @@
1+
PREFIX = /usr/lib/surveyor
2+
13
surveyor.so: surveyor.c
24
gcc -Wall -nostartfiles -fpic -shared surveyor.c -o surveyor.so -ldl -D_GNU_SOURCE
5+
6+
install: surveyor.so
7+
install -d $(PREFIX)/lib/
8+
install -m 644 surveyor.so $(PREFIX)/lib/

infra/surveyor/default.nix

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,18 @@
1-
let pkgs = import ./nix {}; in
1+
{ pkgs ? import ./nix {} }:
22

33
with rec
44
{
5+
surveyor-source = pkgs.lib.sourceByRegex ./.
6+
[ "^Makefile$"
7+
"^surveyor.c"
8+
];
9+
10+
surveyor = pkgs.stdenv.mkDerivation
11+
{ name = "surveyor";
12+
src = surveyor-source;
13+
preConfigure = ''makeFlags="$makeFlags PREFIX=$out"'';
14+
};
15+
516
runTest = test: pkgs.runCommand "test"
617
{ buildInputs = [ pkgs.netcat pkgs.curl pkgs.haskellPackages.wai-app-static ] ;}
718
(test + "\n" + "touch $out");
@@ -39,7 +50,7 @@ let tests =
3950
${runPort 1234}
4051
4152
SRV_MAP="*:80:*:1234" \
42-
LD_PRELOAD="${pkgs.surveyor}/lib/surveyor.so" \
53+
LD_PRELOAD="${surveyor}/lib/surveyor.so" \
4354
curl localhost | grep -q '1234'
4455
'';
4556

@@ -49,7 +60,7 @@ let tests =
4960
${runPort 1234}
5061
5162
SRV_MAP="192.168.42.42:*:127.0.0.1:*" \
52-
LD_PRELOAD="${pkgs.surveyor}/lib/surveyor.so" \
63+
LD_PRELOAD="${surveyor}/lib/surveyor.so" \
5364
curl 192.168.42.42:1234 | grep -q '1234'
5465
'';
5566

@@ -62,9 +73,9 @@ let tests =
6273
6374
export SRV_MAP="*:1234:*:1235 *:1235:*:1234"
6475
65-
LD_PRELOAD="${pkgs.surveyor}/lib/surveyor.so" \
76+
LD_PRELOAD="${surveyor}/lib/surveyor.so" \
6677
curl localhost:1234 | grep -q '1235'
67-
LD_PRELOAD="${pkgs.surveyor}/lib/surveyor.so" \
78+
LD_PRELOAD="${surveyor}/lib/surveyor.so" \
6879
curl localhost:1235 | grep -q '1234'
6980
'';
7081

@@ -80,13 +91,12 @@ let tests =
8091
[["0.0.0.42" "www.example.com"] ["0.0.0.43" "does.not.exist"]]}
8192
8293
83-
LD_PRELOAD="${pkgs.surveyor}/lib/surveyor.so ${pkgs.libredirect}/lib/libredirect.so" \
94+
LD_PRELOAD="${surveyor}/lib/surveyor.so ${pkgs.libredirect}/lib/libredirect.so" \
8495
curl www.example.com | grep -q '1234'
85-
LD_PRELOAD="${pkgs.surveyor}/lib/surveyor.so ${pkgs.libredirect}/lib/libredirect.so" \
96+
LD_PRELOAD="${surveyor}/lib/surveyor.so ${pkgs.libredirect}/lib/libredirect.so" \
8697
curl does.not.exist | grep -q '1235'
8798
'';
8899
}; in
89100

90-
{ inherit (pkgs) surveyor;
91-
inherit test_portMap;
101+
{ inherit surveyor;
92102
} // (builtins.mapAttrs (k: v: runTest v) tests)

infra/surveyor/nix/default.nix

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,4 @@
11
{ sources ? import ./sources.nix }:
2-
with
3-
{ overlay = _: pkgs:
4-
{ inherit (import sources.niv {}) niv;
5-
surveyor = pkgs.stdenv.mkDerivation
6-
{ name = "surveyor";
7-
src = pkgs.lib.sourceByRegex ../.
8-
[ "^Makefile$"
9-
"^surveyor.c"
10-
];
11-
installPhase = "mkdir -p $out/lib && cp surveyor.so $out/lib";
12-
} ;
13-
};
14-
};
2+
with { overlay = _: pkgs: { inherit (import sources.niv {}) niv; }; };
153
import sources.nixpkgs
164
{ overlays = [ overlay ] ; config = {}; }

0 commit comments

Comments
 (0)