add anoia.net.constants for SOCK_{STREAM,DGRAM} etc
we use an ugly bit of C preprocessor to get the values from header files, because certain constants are different on MIPS than on other architectures
This commit is contained in:
parent
9795f03da4
commit
74cf3e0711
3 changed files with 19 additions and 3 deletions
|
@ -1,10 +1,14 @@
|
|||
|
||||
default: fs.lua init.lua nl.lua svc.lua
|
||||
default: fs.lua init.lua nl.lua svc.lua net/constants.lua
|
||||
|
||||
test:
|
||||
ln -s . anoia
|
||||
fennel test.fnl
|
||||
fennel test-svc.fnl
|
||||
|
||||
net/constants.lua: net/constants.c
|
||||
$(CC) -imacros sys/socket.h -imacros linux/netlink.h -E -P - < net/constants.c | sed 's/ *$$//g' | cat -s > net/constants.lua
|
||||
|
||||
|
||||
%.lua: %.fnl
|
||||
fennel --compile $< > $@
|
||||
|
|
|
@ -4,13 +4,14 @@
|
|||
, linotify
|
||||
, lua
|
||||
, lualinux
|
||||
, cpio
|
||||
}:
|
||||
let pname = "anoia";
|
||||
in stdenv.mkDerivation {
|
||||
inherit pname;
|
||||
version = "0.1";
|
||||
src = ./.;
|
||||
nativeBuildInputs = [ fennel ];
|
||||
nativeBuildInputs = [ fennel cpio ];
|
||||
buildInputs = with lua.pkgs; [ linotify lualinux ];
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
|
@ -18,7 +19,7 @@ in stdenv.mkDerivation {
|
|||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/share/lua/${lua.luaversion}/${pname}"
|
||||
cp *.lua "$out/share/lua/${lua.luaversion}/${pname}"
|
||||
find . -name \*.lua | cpio -p -d "$out/share/lua/${lua.luaversion}/${pname}"
|
||||
|
||||
mkdir -p "$dev/share/lua/${lua.luaversion}/${pname}"
|
||||
cp assert.fnl "$dev/share/lua/${lua.luaversion}/${pname}"
|
||||
|
|
11
pkgs/anoia/net/constants.c
Normal file
11
pkgs/anoia/net/constants.c
Normal file
|
@ -0,0 +1,11 @@
|
|||
|
||||
#define MACRO(c) [#c] = c,
|
||||
|
||||
return {
|
||||
MACRO(SOCK_STREAM)
|
||||
MACRO(SOCK_DGRAM)
|
||||
MACRO(SOCK_RAW)
|
||||
MACRO(AF_LOCAL)
|
||||
MACRO(AF_NETLINK)
|
||||
MACRO(NETLINK_KOBJECT_UEVENT)
|
||||
}
|
Loading…
Reference in a new issue