1 { fetchFromGitHub, skawarePackages }:
7 # Maintainer of manpages uses following versioning scheme: for every
8 # upstream $version he tags manpages release as ${version}.1, and,
9 # in case of extra fixes to manpages, new tags in form ${version}.2,
10 # ${version}.3 and so on are created.
11 manpages = fetchFromGitHub {
13 repo = "execline-man-pages";
15 sha256 = "sha256-hT0YsuYJ3XSMYwtlwDR8PGlD8ng8XPky93rCprruHu8=";
22 sha256 = "sha256-ASYPyvgP+8oqlKpV6kdN+545swM7VciviBJnkYeVMfY=";
24 description = "A small scripting language, to be used in place of a shell in non-interactive scripts";
26 outputs = [ "bin" "man" "lib" "dev" "doc" "out" ];
30 "--libdir=\${lib}/lib"
31 "--dynlibdir=\${lib}/lib"
32 "--bindir=\${bin}/bin"
33 "--includedir=\${dev}/include"
34 "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps"
35 "--with-include=${skalibs.dev}/include"
36 "--with-lib=${skalibs.lib}/lib"
37 "--with-dynlib=${skalibs.lib}/lib"
41 # remove all execline executables from build directory
42 rm $(find -type f -mindepth 1 -maxdepth 1 -executable)
45 mv doc $doc/share/doc/execline/html
46 mv examples $doc/share/doc/execline/examples
48 mv $bin/bin/execlineb $bin/bin/.execlineb-wrapped
50 # A wrapper around execlineb, which provides all execline
51 # tools on `execlineb`’s PATH.
52 # It is implemented as a C script, because on non-Linux,
53 # nested shebang lines are not supported.
54 # The -lskarnet has to come at the end to support static builds.
58 -D "EXECLINEB_PATH()=\"$bin/bin/.execlineb-wrapped\"" \
59 -D "EXECLINE_BIN_PATH()=\"$bin/bin\"" \
60 -I "${skalibs.dev}/include" \
61 -L "${skalibs.lib}/lib" \
62 -o "$bin/bin/execlineb" \
63 ${./execlineb-wrapper.c} \
66 cp -vr ${manpages}/man* $man/share