aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.nix169
-rw-r--r--src/libexpr/nix.sdf141
2 files changed, 0 insertions, 310 deletions
diff --git a/build.nix b/build.nix
deleted file mode 100644
index 5f10f3e91..000000000
--- a/build.nix
+++ /dev/null
@@ -1,169 +0,0 @@
-with import <nix-make/lib>;
-with pkgs;
-
-rec {
-
- bin2c = link {
- objects = [ (compileC { main = ./src/bin2c/bin2c.c; }) ];
- programName = "bin2c";
- };
-
- bsdiff = link {
- objects = [ (compileC { main = ./src/bsdiff-4.3/bsdiff.c; buildInputs = [ pkgs.bzip2 ]; }) ];
- programName = "bsdiff";
- buildInputs = [ pkgs.bzip2 ];
- flags = "-lbz2";
- };
-
- bspatch = link {
- objects = [ (compileC { main = ./src/bsdiff-4.3/bspatch.c; buildInputs = [ pkgs.bzip2 ]; }) ];
- programName = "bspatch";
- buildInputs = [ pkgs.bzip2 ];
- flags = "-lbz2";
- };
-
- libformat = makeLibrary {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src ];
- })
- [ ./src/boost/format/format_implementation.cc
- ./src/boost/format/free_funcs.cc
- ./src/boost/format/parsing.cc
- ];
- libraryName = "format";
- };
-
- libutil = makeLibrary {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/libutil ./src ./. ];
- buildInputs = [ pkgs.openssl ];
- })
- [ ./src/libutil/util.cc
- ./src/libutil/hash.cc
- ./src/libutil/serialise.cc
- ./src/libutil/archive.cc
- ./src/libutil/xml-writer.cc
- ./src/libutil/immutable.cc
- ];
- libraryName = "util";
- };
-
- libstore = makeLibrary {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/libstore ./src/libutil ./src ./. ];
- buildInputs = [ pkgs.sqlite ];
- cFlags = "-DNIX_STORE_DIR=\"/nix/store\" -DNIX_DATA_DIR=\"/home/eelco/Dev/nix/inst/share\" -DNIX_STATE_DIR=\"/nix/var/nix\" -DNIX_LOG_DIR=\"/foo\" -DNIX_CONF_DIR=\"/foo\" -DNIX_LIBEXEC_DIR=\"/foo\" -DNIX_BIN_DIR=\"/home/eelco/Dev/nix/inst/bin\"";
- })
- [ ./src/libstore/store-api.cc
- ./src/libstore/local-store.cc
- ./src/libstore/remote-store.cc
- ./src/libstore/derivations.cc
- ./src/libstore/build.cc
- ./src/libstore/misc.cc
- ./src/libstore/globals.cc
- ./src/libstore/references.cc
- ./src/libstore/pathlocks.cc
- ./src/libstore/gc.cc
- ./src/libstore/optimise-store.cc
- ];
- libraryName = "store";
- };
-
- libmain = makeLibrary {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/libmain ./src/libstore ./src/libutil ./src ./. ];
- })
- [ ./src/libmain/shared.cc ];
- libraryName = "main";
- };
-
- nix_hash = link {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/nix-hash ./src/libmain ./src/libstore ./src/libutil ./src ./. ];
- })
- [ ./src/nix-hash/nix-hash.cc
- ];
- libraries = [ libformat libutil libstore libmain ];
- buildInputs = [ pkgs.openssl pkgs.sqlite ];
- flags = "-lssl -lsqlite3 -lstdc++";
- programName = "nix-hash";
- };
-
- nix_store = link {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/nix-store ./src/libmain ./src/libstore ./src/libutil ./src ./. ];
- })
- [ ./src/nix-store/nix-store.cc
- ./src/nix-store/dotgraph.cc
- ./src/nix-store/xmlgraph.cc
- ];
- libraries = [ libformat libutil libstore libmain ];
- buildInputs = [ pkgs.openssl pkgs.sqlite ];
- flags = "-lssl -lsqlite3 -lstdc++";
- programName = "nix-store";
- };
-
- libexpr = makeLibrary {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/libexpr ./src/libstore ./src/libutil ./src ./. ];
- })
- [ ./src/libexpr/nixexpr.cc
- ./src/libexpr/eval.cc
- ./src/libexpr/primops.cc
- ./src/libexpr/lexer-tab.cc
- ./src/libexpr/parser-tab.cc
- ./src/libexpr/get-drvs.cc
- ./src/libexpr/attr-path.cc
- ./src/libexpr/value-to-xml.cc
- ./src/libexpr/common-opts.cc
- ./src/libexpr/names.cc
- ];
- libraryName = "expr";
- };
-
- nix_instantiate = link {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/nix-instantiate ./src/libexpr ./src/libmain ./src/libstore ./src/libutil ./src ./. ];
- })
- [ ./src/nix-instantiate/nix-instantiate.cc ];
- libraries = [ libformat libutil libstore libmain libexpr ];
- buildInputs = [ pkgs.openssl pkgs.sqlite ];
- flags = "-lssl -lsqlite3 -lstdc++";
- programName = "nix-instantiate";
- };
-
- nix_env = link {
- objects =
- map (fn: compileC {
- main = fn;
- localIncludePath = [ ./src/nix-env ./src/libexpr ./src/libmain ./src/libstore ./src/libutil ./src ./. ];
- })
- [ ./src/nix-env/nix-env.cc
- ./src/nix-env/profiles.cc
- ./src/nix-env/user-env.cc
- ];
- libraries = [ libformat libutil libstore libmain libexpr ];
- buildInputs = [ pkgs.openssl pkgs.sqlite ];
- flags = "-lssl -lsqlite3 -lstdc++";
- programName = "nix-env";
- };
-
- all = [ bsdiff bspatch nix_hash nix_store nix_instantiate nix_env ];
-
-}
diff --git a/src/libexpr/nix.sdf b/src/libexpr/nix.sdf
deleted file mode 100644
index 42fb21c3b..000000000
--- a/src/libexpr/nix.sdf
+++ /dev/null
@@ -1,141 +0,0 @@
-%% Note: this SDF grammar is no longer used in the Nix expression
-%% parser and may not be up to date.
-
-definition
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Top level syntax.
-
-module Main
-imports Nix-Exprs Nix-Layout
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Expressions.
-
-module Nix-Exprs
-imports Nix-Lexicals
-exports
- sorts Expr Formal Bind ExprList
- context-free start-symbols Expr
- context-free syntax
-
- Id -> Expr {cons("Var")}
- Int -> Expr {cons("Int")}
- Str -> Expr {cons("Str")}
- Uri -> Expr {cons("Uri")}
- Path -> Expr {cons("Path")}
-
- "(" Expr ")" -> Expr {bracket}
-
- Expr Expr -> Expr {cons("Call"), left}
-
- Id ":" Expr -> Expr {cons("Function1")}
- "{" {Formal ","}* "}" ":" Expr -> Expr {cons("Function")}
- Id -> Formal {cons("NoDefFormal")}
- Id "?" Expr -> Formal {cons("DefFormal")}
-
- "assert" Expr ";" Expr -> Expr {cons("Assert")}
-
- "with" Expr ";" Expr -> Expr {cons("With")}
-
- "rec" "{" Bind* "}" -> Expr {cons("Rec")}
- "let" Bind* "in" Expr -> Expr {cons("Let")}
- "let" "{" Bind* "}" -> Expr {cons("LetRec")}
- "{" Bind* "}" -> Expr {cons("Attrs")}
-
- Id "=" Expr ";" -> Bind {cons("Bind")}
- "inherit" ("(" Expr ")")? Id* ";" -> Bind {cons("Inherit")}
-
- "[" ExprList "]" -> Expr {cons("List")}
- -> ExprList {cons("ExprNil")}
- Expr ExprList -> ExprList {cons("ExprCons")}
-
- Expr "." Id -> Expr {cons("Select")}
-
- "if" Expr "then" Expr "else" Expr -> Expr {cons("If")}
-
- Expr "==" Expr -> Expr {cons("OpEq"), non-assoc}
- Expr "!=" Expr -> Expr {cons("OpNEq"), non-assoc}
-
- "!" Expr -> Expr {cons("OpNot")}
- Expr "&&" Expr -> Expr {cons("OpAnd"), right}
- Expr "||" Expr -> Expr {cons("OpOr"), right}
- Expr "->" Expr -> Expr {cons("OpImpl"), right}
-
- Expr "//" Expr -> Expr {cons("OpUpdate"), right}
- Expr "~" Expr -> Expr {cons("SubPath"), non-assoc}
- Expr "?" Id -> Expr {cons("OpHasAttr")}
- Expr "+" Expr -> Expr {cons("OpPlus"), left}
- Expr "++" Expr -> Expr {cons("OpConcat"), right}
-
- context-free priorities
-
- Expr "." Id -> Expr
- > Expr ExprList -> ExprList
- > Expr Expr -> Expr
- > Expr "~" Expr -> Expr
- > Expr "?" Id -> Expr
- > Expr "++" Expr -> Expr
- > Expr "+" Expr -> Expr
- > "!" Expr -> Expr
- > Expr "//" Expr -> Expr
- > { Expr "==" Expr -> Expr
- Expr "!=" Expr -> Expr
- }
- > Expr "&&" Expr -> Expr
- > Expr "||" Expr -> Expr
- > Expr "->" Expr -> Expr
- > "if" Expr "then" Expr "else" Expr -> Expr
- > "assert" Expr ";" Expr -> Expr
- > "with" Expr ";" Expr -> Expr
- > Id ":" Expr -> Expr
- > "{" {Formal ","}* "}" ":" Expr -> Expr
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Lexical syntax.
-
-module Nix-Lexicals
-exports
- sorts Id Int Str Path Uri
- lexical syntax
- [a-zA-Z\_][a-zA-Z0-9\_\']* -> Id
- "rec" | "let" | "if" | "then" | "else" | "assert" | "with" | "inherit" -> Id {reject}
-
- [0-9]+ -> Int
-
- "\"" (~[\"\\] | ("\\" ~[]) )* "\"" -> Str
- "''" (~[\"\\] | ("\\" ~[]) )* "''" -> Str
-
- [a-zA-Z0-9\.\_\-\+]* ("/"[a-zA-Z0-9\.\_\-\+]+)+ -> Path
-
- [a-zA-Z] [a-zA-Z0-9\+\-\.]* ":" [a-zA-Z0-9\%\/\?\:\@\&\=\+\$\,\-\_\.\!\~\*\']+ -> Uri
-
- lexical restrictions
- Id -/- [a-zA-Z0-9\_\']
- Int -/- [0-9]
- Path -/- [a-zA-Z0-9\.\_\-\+\/]
- Uri -/- [a-zA-Z0-9\%\/\?\:\@\&\=\+\$\,\-\_\.\!\~\*\']
- "rec" "let" "if" "then" "else" "assert" "with" "inherit" -/- [A-Za-z0-9\_\']
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Layout.
-
-module Nix-Layout
-exports
- sorts HashComment Asterisk Comment
- lexical syntax
- [\ \t\n] -> LAYOUT
- HashComment -> LAYOUT
- Comment -> LAYOUT
- "#" ~[\n]* -> HashComment
- "/*" ( ~[\*] | Asterisk )* "*/" -> Comment
- [\*] ~[\/] -> Asterisk
- lexical restrictions
- HashComment -/- ~[\n]
- context-free restrictions
- LAYOUT? -/- [\ \t\n\#]
- LAYOUT? -/- [\/].[\*]