* Makefile.am (BUILT_SOURCES): New variable. * daemon.am (BUILT_SOURCES): Use +=. * doc.am (BUILT_SOURCES, MAINTAINERCLEANFILES, EXTRA_DIST): Add doc/os-config.texi. (doc/os-config.texi): New target. * doc/guix.texi (System Installation): Include os-config.texi.
		
			
				
	
	
		
			198 lines
		
	
	
	
		
			5.3 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			198 lines
		
	
	
	
		
			5.3 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # GNU Guix --- Functional package management for GNU
 | |
| # Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
 | |
| #
 | |
| # This file is part of GNU Guix.
 | |
| #
 | |
| # GNU Guix is free software; you can redistribute it and/or modify it
 | |
| # under the terms of the GNU General Public License as published by
 | |
| # the Free Software Foundation; either version 3 of the License, or (at
 | |
| # your option) any later version.
 | |
| #
 | |
| # GNU Guix is distributed in the hope that it will be useful, but
 | |
| # WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| # GNU General Public License for more details.
 | |
| #
 | |
| # You should have received a copy of the GNU General Public License
 | |
| # along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| #
 | |
| # Integration of the `guix-daemon' code taken from upstream Nix.
 | |
| #
 | |
| 
 | |
| BUILT_SOURCES += nix/libstore/schema.sql.hh
 | |
| CLEANFILES += $(BUILT_SOURCES)
 | |
| 
 | |
| noinst_LIBRARIES = libformat.a libutil.a libstore.a
 | |
| 
 | |
| # Use '-std=c++0x' for 'std::shared_ptr'.
 | |
| AM_CXXFLAGS = -Wall -std=c++0x
 | |
| 
 | |
| libformat_a_SOURCES =				\
 | |
|   nix/boost/format/free_funcs.cc		\
 | |
|   nix/boost/format/parsing.cc			\
 | |
|   nix/boost/format/format_implementation.cc
 | |
| 
 | |
| libformat_headers =				\
 | |
|   nix/boost/throw_exception.hpp			\
 | |
|   nix/boost/format.hpp				\
 | |
|   nix/boost/assert.hpp				\
 | |
|   nix/boost/format/macros_default.hpp		\
 | |
|   nix/boost/format/format_fwd.hpp		\
 | |
|   nix/boost/format/format_class.hpp		\
 | |
|   nix/boost/format/exceptions.hpp		\
 | |
|   nix/boost/format/group.hpp			\
 | |
|   nix/boost/format/feed_args.hpp		\
 | |
|   nix/boost/format/internals_fwd.hpp		\
 | |
|   nix/boost/format/internals.hpp
 | |
| 
 | |
| libformat_a_CPPFLAGS =				\
 | |
|   -I$(top_srcdir)/nix
 | |
| 
 | |
| libutil_a_SOURCES =				\
 | |
|   nix/libutil/archive.cc			\
 | |
|   nix/libutil/affinity.cc			\
 | |
|   nix/libutil/serialise.cc			\
 | |
|   nix/libutil/util.cc				\
 | |
|   nix/libutil/xml-writer.cc			\
 | |
|   nix/libutil/hash.cc				\
 | |
|   nix/libutil/gcrypt-hash.cc
 | |
| 
 | |
| libutil_headers =				\
 | |
|   nix/libutil/affinity.hh			\
 | |
|   nix/libutil/hash.hh				\
 | |
|   nix/libutil/serialise.hh			\
 | |
|   nix/libutil/xml-writer.hh			\
 | |
|   nix/libutil/util.hh				\
 | |
|   nix/libutil/archive.hh			\
 | |
|   nix/libutil/types.hh				\
 | |
|   nix/libutil/gcrypt-hash.hh			\
 | |
|   nix/libutil/md5.h				\
 | |
|   nix/libutil/sha1.h				\
 | |
|   nix/libutil/sha256.h
 | |
| 
 | |
| libutil_a_CPPFLAGS =				\
 | |
|   -I$(top_builddir)/nix				\
 | |
|   -I$(top_srcdir)/nix/libutil			\
 | |
|   $(libformat_a_CPPFLAGS)
 | |
| 
 | |
| libstore_a_SOURCES =				\
 | |
|   nix/libstore/gc.cc				\
 | |
|   nix/libstore/globals.cc			\
 | |
|   nix/libstore/misc.cc				\
 | |
|   nix/libstore/references.cc			\
 | |
|   nix/libstore/store-api.cc			\
 | |
|   nix/libstore/optimise-store.cc		\
 | |
|   nix/libstore/local-store.cc			\
 | |
|   nix/libstore/remote-store.cc			\
 | |
|   nix/libstore/build.cc				\
 | |
|   nix/libstore/pathlocks.cc			\
 | |
|   nix/libstore/derivations.cc
 | |
| 
 | |
| libstore_headers =				\
 | |
|   nix/libstore/references.hh			\
 | |
|   nix/libstore/pathlocks.hh			\
 | |
|   nix/libstore/globals.hh			\
 | |
|   nix/libstore/schema.sql.hh			\
 | |
|   nix/libstore/worker-protocol.hh		\
 | |
|   nix/libstore/remote-store.hh			\
 | |
|   nix/libstore/derivations.hh			\
 | |
|   nix/libstore/misc.hh				\
 | |
|   nix/libstore/local-store.hh			\
 | |
|   nix/libstore/store-api.hh
 | |
| 
 | |
| libstore_a_CPPFLAGS =				\
 | |
|   $(libutil_a_CPPFLAGS)				\
 | |
|   -I$(top_srcdir)/nix/libstore			\
 | |
|   -I$(top_builddir)/nix/libstore		\
 | |
|   -DNIX_STORE_DIR=\"$(storedir)\"		\
 | |
|   -DNIX_DATA_DIR=\"$(datadir)\"			\
 | |
|   -DNIX_STATE_DIR=\"$(localstatedir)/guix\"	\
 | |
|   -DNIX_LOG_DIR=\"$(localstatedir)/log/guix\"	\
 | |
|   -DNIX_CONF_DIR=\"$(sysconfdir)/guix\"		\
 | |
|   -DNIX_LIBEXEC_DIR=\"$(libexecdir)\"		\
 | |
|   -DNIX_BIN_DIR=\"$(bindir)\"			\
 | |
|   -DOPENSSL_PATH="\"guix-authenticate\""
 | |
| 
 | |
| libstore_a_CXXFLAGS = $(AM_CXXFLAGS)		\
 | |
|   $(SQLITE3_CFLAGS) $(LIBGCRYPT_CFLAGS)
 | |
| 
 | |
| bin_PROGRAMS = guix-daemon
 | |
| sbin_PROGRAMS = guix-register
 | |
| 
 | |
| guix_daemon_SOURCES =				\
 | |
|   nix/nix-daemon/nix-daemon.cc			\
 | |
|   nix/nix-daemon/guix-daemon.cc
 | |
| 
 | |
| guix_daemon_CPPFLAGS =				\
 | |
|   $(libutil_a_CPPFLAGS)				\
 | |
|   -I$(top_srcdir)/nix/libstore
 | |
| 
 | |
| guix_daemon_LDADD =				\
 | |
|   libstore.a libutil.a libformat.a -lbz2	\
 | |
|   $(SQLITE3_LIBS) $(LIBGCRYPT_LIBS)
 | |
| 
 | |
| guix_daemon_headers =				\
 | |
|   nix/nix-daemon/shared.hh
 | |
| 
 | |
| 
 | |
| guix_register_SOURCES =				\
 | |
|   nix/guix-register/guix-register.cc
 | |
| 
 | |
| guix_register_CPPFLAGS =			\
 | |
|   $(libutil_a_CPPFLAGS)				\
 | |
|   $(libstore_a_CPPFLAGS)			\
 | |
|   -I$(top_srcdir)/nix/libstore
 | |
| 
 | |
| # XXX: Should we start using shared libs?
 | |
| guix_register_LDADD =				\
 | |
|   libstore.a libutil.a libformat.a -lbz2	\
 | |
|   $(SQLITE3_LIBS) $(LIBGCRYPT_LIBS)
 | |
| 
 | |
| 
 | |
| noinst_HEADERS =						\
 | |
|   $(libformat_headers) $(libutil_headers) $(libstore_headers)	\
 | |
|   $(guix_daemon_headers)
 | |
| 
 | |
| nix/libstore/schema.sql.hh: nix/libstore/schema.sql
 | |
| 	$(GUILE) --no-auto-compile -c				\
 | |
| 	  "(use-modules (rnrs io ports))			\
 | |
| 	   (call-with-output-file \"$@\"			\
 | |
| 	     (lambda (out)					\
 | |
| 	       (call-with-input-file \"$^\"			\
 | |
| 	         (lambda (in)					\
 | |
| 	           (write (get-string-all in) out)))))"
 | |
| 
 | |
| nodist_pkglibexec_SCRIPTS =			\
 | |
|   nix/scripts/list-runtime-roots		\
 | |
|   nix/scripts/substitute-binary
 | |
| 
 | |
| if BUILD_DAEMON_OFFLOAD
 | |
| 
 | |
| nodist_pkglibexec_SCRIPTS +=			\
 | |
|   nix/scripts/offload
 | |
| 
 | |
| endif BUILD_DAEMON_OFFLOAD
 | |
| 
 | |
| 
 | |
| # XXX: It'd be better to hide it in $(pkglibexecdir).
 | |
| nodist_libexec_SCRIPTS =			\
 | |
|   nix/scripts/guix-authenticate
 | |
| 
 | |
| EXTRA_DIST +=					\
 | |
|   nix/sync-with-upstream			\
 | |
|   nix/libstore/schema.sql			\
 | |
|   nix/AUTHORS					\
 | |
|   nix/COPYING
 | |
| 
 | |
| AM_TESTS_ENVIRONMENT +=				\
 | |
|   top_builddir="$(abs_top_builddir)"
 | |
| 
 | |
| TESTS +=					\
 | |
|   tests/guix-daemon.sh
 | |
| 
 | |
| clean-local:
 | |
| 	-if test -d "$(GUIX_TEST_ROOT)"; then		\
 | |
| 	  find "$(GUIX_TEST_ROOT)" | xargs chmod +w;	\
 | |
| 	 fi
 | |
| 	-rm -rf "$(GUIX_TEST_ROOT)"
 |