diff --git a/src/Makefile.am b/src/Makefile.am index e35b82a889f0c1534f40019841e72467fdf57b2f..1f2aafcdba6d1319de2d7fdb0b28de91afae7107 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1 +1 @@ -SUBDIRS = boost libutil libstore libmain nix-store nix-hash nix-instantiate +SUBDIRS = bin2c boost libutil libstore libmain nix-store nix-hash nix-instantiate diff --git a/src/bin2c/Makefile.am b/src/bin2c/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..bdd58808a159c45ae0488d5220890a679c709c7a --- /dev/null +++ b/src/bin2c/Makefile.am @@ -0,0 +1,3 @@ +noinst_PROGRAMS = bin2c + +bin2c_SOURCES = bin2c.c diff --git a/src/nix-instantiate/bin2c.c b/src/bin2c/bin2c.c similarity index 100% rename from src/nix-instantiate/bin2c.c rename to src/bin2c/bin2c.c diff --git a/src/nix-instantiate/Makefile.am b/src/nix-instantiate/Makefile.am index cdaec1390d9e31850b2c14db35ca0de15d82a79c..3a09add0c6457a7ec3cc0f7af5eb8f02c9d8db3e 100644 --- a/src/nix-instantiate/Makefile.am +++ b/src/nix-instantiate/Makefile.am @@ -1,6 +1,6 @@ bin_PROGRAMS = nix-instantiate -nix_instantiate_SOURCES = fixexpr.cc parser.cc eval.cc primops.cc fix.cc +nix_instantiate_SOURCES = nixexpr.cc parser.cc eval.cc primops.cc main.cc nix_instantiate_LDADD = ../libmain/libmain.a ../libstore/libstore.a ../libutil/libutil.a \ ../boost/format/libformat.a -L../../externals/inst/lib -ldb_cxx \ -lsglr -lATB -lconversion -lasfix2 -lmept -lATerm @@ -13,14 +13,10 @@ AM_CXXFLAGS = \ parser.o: parse-table.h -parse-table.h: fix.tbl bin2c - ./bin2c fixParseTable < $< > $@ || (rm $@ && exit 1) - -noinst_PROGRAMS = bin2c - -bin2c_SOURCES = bin2c.c +parse-table.h: nix.tbl + ../bin2c/bin2c nixParseTable < $< > $@ || (rm $@ && exit 1) %.tbl: %.sdf ../../externals/inst/bin/sdf2table -i $< -o $@ -CLEANFILES = parse-table.h fix.tbl +CLEANFILES = parse-table.h nix.tbl diff --git a/src/nix-instantiate/eval.hh b/src/nix-instantiate/eval.hh index 061c840a7576ae70d2be15cdfdaa38c24eab794d..0bc052676deb86efb7950dcd5a727df8c6c7f72e 100644 --- a/src/nix-instantiate/eval.hh +++ b/src/nix-instantiate/eval.hh @@ -5,7 +5,7 @@ #include "aterm.hh" #include "hash.hh" -#include "fixexpr.hh" +#include "nixexpr.hh" typedef map<Path, PathSet> DrvPaths; diff --git a/src/nix-instantiate/fix.cc b/src/nix-instantiate/main.cc similarity index 96% rename from src/nix-instantiate/fix.cc rename to src/nix-instantiate/main.cc index e407aaf44346bc36b037cbc2397e36ddb6fa3144..aa6883ff84b83eeab770fe31f67e77df8f3cc371 100644 --- a/src/nix-instantiate/fix.cc +++ b/src/nix-instantiate/main.cc @@ -70,7 +70,7 @@ void run(Strings args) #if 0 state.searchDirs.push_back("."); - state.searchDirs.push_back(nixDataDir + "/fix"); + state.searchDirs.push_back(nixDataDir + "/nix"); #endif for (Strings::iterator it = args.begin(); @@ -114,4 +114,4 @@ void run(Strings args) } -string programId = "fix"; +string programId = "nix-instantiate"; diff --git a/src/nix-instantiate/fix.sdf b/src/nix-instantiate/nix.sdf similarity index 100% rename from src/nix-instantiate/fix.sdf rename to src/nix-instantiate/nix.sdf diff --git a/src/nix-instantiate/fixexpr.cc b/src/nix-instantiate/nixexpr.cc similarity index 99% rename from src/nix-instantiate/fixexpr.cc rename to src/nix-instantiate/nixexpr.cc index 721fa8afa5f2de04e8d386b177a480180f6d0771..816b39dc1ae38ad4d98fffa7d2ba3c1022e4897b 100644 --- a/src/nix-instantiate/fixexpr.cc +++ b/src/nix-instantiate/nixexpr.cc @@ -1,4 +1,4 @@ -#include "fixexpr.hh" +#include "nixexpr.hh" #include "storeexpr.hh" diff --git a/src/nix-instantiate/fixexpr.hh b/src/nix-instantiate/nixexpr.hh similarity index 93% rename from src/nix-instantiate/fixexpr.hh rename to src/nix-instantiate/nixexpr.hh index 6c1e51d9ccd6df439530b2aaa19f328a4e99ead0..011c2900e12a721772ae9e0dbaaf71795bed5e67 100644 --- a/src/nix-instantiate/fixexpr.hh +++ b/src/nix-instantiate/nixexpr.hh @@ -1,5 +1,5 @@ -#ifndef __FIXEXPR_H -#define __FIXEXPR_H +#ifndef __NIXEXPR_H +#define __NIXEXPR_H #include <map> @@ -8,7 +8,7 @@ #include "util.hh" -/* Fix expressions are represented as ATerms. The maximal sharing +/* Nix expressions are represented as ATerms. The maximal sharing property of the ATerm library allows us to implement caching of normals forms efficiently. */ typedef ATerm Expr; @@ -72,4 +72,4 @@ Expr substitute(const ATermMap & subs, Expr e); Expr makeBool(bool b); -#endif /* !__FIXEXPR_H */ +#endif /* !__NIXEXPR_H */ diff --git a/src/nix-instantiate/parser.cc b/src/nix-instantiate/parser.cc index eaa41b3963efefc0b00ad8a592b4e0ebdbbbd86a..f950a51f69cecda59ee7125424f4c3f324205940 100644 --- a/src/nix-instantiate/parser.cc +++ b/src/nix-instantiate/parser.cc @@ -13,7 +13,6 @@ extern "C" { #include "aterm.hh" #include "parser.hh" #include "shared.hh" -#include "fixexpr.hh" #include "parse-table.h" @@ -76,12 +75,12 @@ Expr parseExprFromFile(Path path) if (e) return e; #endif - /* If `path' refers to a directory, append `/default.fix'. */ + /* If `path' refers to a directory, append `/default.nix'. */ struct stat st; if (stat(path.c_str(), &st)) throw SysError(format("getting status of `%1%'") % path); if (S_ISDIR(st.st_mode)) - path = canonPath(path + "/default.fix"); + path = canonPath(path + "/default.nix"); /* Initialise the SDF libraries. */ static bool initialised = false; @@ -95,12 +94,12 @@ Expr parseExprFromFile(Path path) ATprotect(&parseTable); parseTable = ATreadFromBinaryString( - (char *) fixParseTable, sizeof fixParseTable); + (char *) nixParseTable, sizeof nixParseTable); if (!parseTable) throw Error(format("cannot construct parse table term")); ATprotect(&lang); - lang = ATmake("Fix"); + lang = ATmake("Nix"); if (!SGopenLanguageFromTerm( (char *) programId.c_str(), lang, parseTable)) throw Error(format("cannot open language")); diff --git a/src/nix-instantiate/parser.hh b/src/nix-instantiate/parser.hh index e44987dd014b94d9fea988c1cf586a92eab56c29..5983ec5629e48958ce9980a54211846f2d16be57 100644 --- a/src/nix-instantiate/parser.hh +++ b/src/nix-instantiate/parser.hh @@ -1,7 +1,7 @@ #ifndef __PARSER_H #define __PARSER_H -#include "fixexpr.hh" +#include "nixexpr.hh" Expr parseExprFromFile(Path path); diff --git a/src/nix-store/Makefile.am b/src/nix-store/Makefile.am index a39d1e2ad9852f00c9b8fbcbb1f6224d479d9545..516d78efc5c2b49b8eea3e4e257eedc8adcdb697 100644 --- a/src/nix-store/Makefile.am +++ b/src/nix-store/Makefile.am @@ -1,15 +1,13 @@ bin_PROGRAMS = nix-store -nix_store_SOURCES = nix.cc dotgraph.cc +nix_store_SOURCES = main.cc dotgraph.cc nix_store_LDADD = ../libmain/libmain.a ../libstore/libstore.a ../libutil/libutil.a \ ../boost/format/libformat.a -L../../externals/inst/lib -ldb_cxx -lATerm -nix.o: nix-help.txt.hh +main.o: help.txt.hh %.hh: % - echo -n '"' > $@ - sed 's|\(.*\)|\1\\n\\|' < $< >> $@ - echo '"' >> $@ + ../bin2c/bin2c helpText < $< > $@ || (rm $@ && exit 1) AM_CXXFLAGS = \ -I.. -I../../externals/inst/include -I../libutil -I../libstore -I../libmain diff --git a/src/nix-store/nix-help.txt b/src/nix-store/help.txt similarity index 100% rename from src/nix-store/nix-help.txt rename to src/nix-store/help.txt diff --git a/src/nix-store/nix.cc b/src/nix-store/main.cc similarity index 98% rename from src/nix-store/nix.cc rename to src/nix-store/main.cc index d1766de39b7eecdeb2280bcfd770f6e437b7413b..0d87db9dfbb9e87de5ab0bf07a19d0629a5da765 100644 --- a/src/nix-store/nix.cc +++ b/src/nix-store/main.cc @@ -6,6 +6,7 @@ #include "archive.hh" #include "shared.hh" #include "dotgraph.hh" +#include "help.txt.hh" typedef void (* Operation) (Strings opFlags, Strings opArgs); @@ -13,9 +14,7 @@ typedef void (* Operation) (Strings opFlags, Strings opArgs); static void printHelp() { - cout << -#include "nix-help.txt.hh" - ; + cout << string((char *) helpText, sizeof helpText); exit(0); } @@ -301,4 +300,4 @@ void run(Strings args) } -string programId = "nix"; +string programId = "nix-store";