# GNU Guix --- Functional package management for GNU # Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020 Ludovic Courtès # Copyright © 2016 Mathieu Lirzin # Copyright © 2020 Tobias Geerinckx-Rice # # 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 . # # Integration of the `guix-daemon' code taken from upstream Nix. # BUILT_SOURCES += %D%/libstore/schema.sql.hh CLEANFILES += %D%/libstore/schema.sql.hh noinst_LIBRARIES = libformat.a libutil.a libstore.a # Use '-std=c++11' for 'std::shared_ptr', 'auto', lambdas, and more. AM_CXXFLAGS = -Wall -std=c++11 libformat_a_SOURCES = \ %D%/boost/format/free_funcs.cc \ %D%/boost/format/parsing.cc \ %D%/boost/format/format_implementation.cc libformat_headers = \ %D%/boost/throw_exception.hpp \ %D%/boost/format.hpp \ %D%/boost/assert.hpp \ %D%/boost/format/macros_default.hpp \ %D%/boost/format/format_fwd.hpp \ %D%/boost/format/format_class.hpp \ %D%/boost/format/exceptions.hpp \ %D%/boost/format/group.hpp \ %D%/boost/format/feed_args.hpp \ %D%/boost/format/internals_fwd.hpp \ %D%/boost/format/internals.hpp libformat_a_CPPFLAGS = \ -I$(top_srcdir)/nix libutil_a_SOURCES = \ %D%/libutil/archive.cc \ %D%/libutil/affinity.cc \ %D%/libutil/serialise.cc \ %D%/libutil/util.cc \ %D%/libutil/hash.cc libutil_headers = \ %D%/libutil/affinity.hh \ %D%/libutil/hash.hh \ %D%/libutil/serialise.hh \ %D%/libutil/util.hh \ %D%/libutil/archive.hh \ %D%/libutil/types.hh libutil_a_CPPFLAGS = \ -I$(top_builddir)/nix \ -I$(top_srcdir)/%D%/libutil \ $(libformat_a_CPPFLAGS) libstore_a_SOURCES = \ %D%/libstore/gc.cc \ %D%/libstore/globals.cc \ %D%/libstore/misc.cc \ %D%/libstore/references.cc \ %D%/libstore/store-api.cc \ %D%/libstore/optimise-store.cc \ %D%/libstore/local-store.cc \ %D%/libstore/build.cc \ %D%/libstore/pathlocks.cc \ %D%/libstore/derivations.cc \ %D%/libstore/builtin2014-02-24Update SRFI-64 to the latest upstream version....Mark H Weaver 2013-02-04SRFI-64: Make the log file's port line-buffered....Ludovic Courtès 2012-06-05SRFI-64: Remove use of (ice-9 syntax-case)....Ludovic Courtès 2012-04-19Add unit test for derivation parsing and output....Ludovic Courtès
    ompile -c \ "(use-modules (rnrs io ports)) \ (call-with-output-file \"$@\" \ (lambda (out) \ (call-with-input-file \"$^\" \ (lambda (in) \ (write (get-string-all in) out)))))" # The '.service' files for systemd. systemdservicedir = $(libdir)/systemd/system nodist_systemdservice_DATA = \ etc/gnu-store.mount \ etc/guix-daemon.service \ etc/guix-publish.service \ etc/guix-gc.service etc/%.mount: etc/%.mount.in \ $(top_builddir)/config.status $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ $(SED) -e 's|@''storedir''@|$(storedir)|' < \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" etc/guix-%.service: etc/guix-%.service.in \ $(top_builddir)/config.status $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" # The service script for sysvinit. sysvinitservicedir = $(sysconfdir)/init.d nodist_sysvinitservice_DATA = etc/init.d/guix-daemon etc/init.d/guix-daemon: etc/init.d/guix-daemon.in \ $(top_builddir)/config.status $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" # The service script for openrc. openrcservicedir = $(sysconfdir)/openrc nodist_openrcservice_DATA = etc/openrc/guix-daemon etc/openrc/guix-daemon: etc/openrc/guix-daemon.in \ $(top_builddir)/config.status $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" # The '.conf' jobs for Upstart. upstartjobdir = $(libdir)/upstart/system nodist_upstartjob_DATA = etc/guix-daemon.conf etc/guix-publish.conf etc/guix-%.conf: etc/guix-%.conf.in \ $(top_builddir)/config.status $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" CLEANFILES += \ $(nodist_systemdservice_DATA) \ $(nodist_upstartjob_DATA) \ $(nodist_sysvinitservice_DATA) \ $(nodist_openrcservice_DATA) EXTRA_DIST += \ %D%/AUTHORS \ %D%/COPYING \ etc/gnu-store.mount.in \ etc/guix-daemon.service.in \ etc/guix-daemon.conf.in \ etc/guix-publish.service.in \ etc/guix-publish.conf.in \ etc/guix-gc.service.in \ etc/guix-gc.timer \ etc/init.d/guix-daemon.in \ etc/openrc/guix-daemon.in if CAN_RUN_TESTS AM_TESTS_ENVIRONMENT += \ top_builddir="$(abs_top_builddir)" TESTS += \ tests/guix-daemon.sh endif CAN_RUN_TESTS clean-local: -if test -d "$(GUIX_TEST_ROOT)"; then \ find "$(GUIX_TEST_ROOT)" | xargs chmod +w; \ fi -rm -rf "$(GUIX_TEST_ROOT)"