forked from GitHub/gf-core
16
.travis.yml
16
.travis.yml
@@ -1,2 +1,14 @@
|
||||
language: nix
|
||||
script: rm -rf .git && nix-build gf.nix
|
||||
sudo: required
|
||||
|
||||
language: c
|
||||
|
||||
services:
|
||||
- docker
|
||||
|
||||
before_install:
|
||||
- docker pull odanoburu/gf-src:3.9
|
||||
|
||||
script:
|
||||
- |
|
||||
docker run --mount src="$(pwd)",target=/home/gfer,type=bind odanoburu/gf-src:3.9 /bin/bash -c "cd /home/gfer/src/runtime/c &&
|
||||
autoreconf -i && ./configure && make && make install ; cd /home/gfer ; cabal install -fserver -fc-runtime --extra-lib-dirs='/usr/local/lib'"
|
||||
|
||||
34
default.nix
34
default.nix
@@ -1,34 +0,0 @@
|
||||
{ mkDerivation, alex, array, base, bytestring, Cabal, cgi
|
||||
, containers, directory, exceptions, filepath, happy, haskeline
|
||||
, HTF, httpd-shed, HUnit, json, mtl, network, network-uri
|
||||
, old-locale, parallel, pretty, process, random, stdenv, terminfo
|
||||
, time, time-compat, unix, utf8-string
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "gf";
|
||||
version = "3.9";
|
||||
src = ./.;
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
enableSeparateDataOutput = true;
|
||||
libraryHaskellDepends = [
|
||||
array base bytestring cgi containers directory exceptions filepath
|
||||
haskeline httpd-shed json mtl network network-uri old-locale
|
||||
parallel pretty process random terminfo time time-compat unix
|
||||
utf8-string
|
||||
];
|
||||
libraryToolDepends = [ alex happy ];
|
||||
executableHaskellDepends = [ base ];
|
||||
testHaskellDepends = [
|
||||
base Cabal directory filepath HTF HUnit process
|
||||
];
|
||||
doCheck = false;
|
||||
postPatch = ''
|
||||
sed -i "s|\"-s\"|\"\"|" ./Setup.hs
|
||||
sed -i "s|numJobs (bf bi)++||" ./Setup.hs
|
||||
'';
|
||||
preBuild = ''export LD_LIBRARY_PATH=`pwd`/dist/build:$LD_LIBRARY_PATH'';
|
||||
homepage = "http://www.grammaticalframework.org/";
|
||||
description = "Grammatical Framework";
|
||||
license = "unknown";
|
||||
}
|
||||
19
gf.nix
19
gf.nix
@@ -1,19 +0,0 @@
|
||||
let
|
||||
# We import the package hierarchy from the NIX_PATH.
|
||||
pkgs = import <nixpkgs> {};
|
||||
|
||||
#
|
||||
# The `cgi` package has some out-of-date upper bounds.
|
||||
# Instead of fixing that upstream, we can use the "jailbreak"
|
||||
# function in Nix, which patches away the upper bounds.
|
||||
#
|
||||
# This isn't ideal, but it lets us build the dependency.
|
||||
#
|
||||
jailbreak = pkgs.haskell.lib.doJailbreak;
|
||||
haskellPackages = pkgs.haskellPackages.extend (self: super: {
|
||||
cgi = jailbreak super.cgi;
|
||||
});
|
||||
|
||||
in {
|
||||
gf = haskellPackages.callPackage (import ./default.nix) {};
|
||||
}
|
||||
Reference in New Issue
Block a user