462421d345
This provides a pluggable mechanism for defining new fetchers. It adds
a builtin function 'fetchTree' that generalizes existing fetchers like
'fetchGit', 'fetchMercurial' and 'fetchTarball'. 'fetchTree' takes a
set of attributes, e.g.
fetchTree {
type = "git";
url = "https://example.org/repo.git";
ref = "some-branch";
rev = "abcdef...";
}
The existing fetchers are just wrappers around this. Note that the
input attributes to fetchTree are the same as flake input
specifications and flake lock file entries.
All fetchers share a common cache stored in
~/.cache/nix/fetcher-cache-v1.sqlite. This replaces the ad hoc caching
mechanisms in fetchGit and download.cc (e.g. ~/.cache/nix/{tarballs,git-revs*}).
This also adds support for Git worktrees (c169ea5904
).
34 lines
665 B
Makefile
34 lines
665 B
Makefile
makefiles = \
|
|
mk/precompiled-headers.mk \
|
|
local.mk \
|
|
nix-rust/local.mk \
|
|
src/libutil/local.mk \
|
|
src/libstore/local.mk \
|
|
src/libfetchers/local.mk \
|
|
src/libmain/local.mk \
|
|
src/libexpr/local.mk \
|
|
src/nix/local.mk \
|
|
src/resolve-system-dependencies/local.mk \
|
|
scripts/local.mk \
|
|
corepkgs/local.mk \
|
|
misc/systemd/local.mk \
|
|
misc/launchd/local.mk \
|
|
misc/upstart/local.mk \
|
|
doc/manual/local.mk \
|
|
tests/local.mk \
|
|
tests/plugins/local.mk
|
|
|
|
-include Makefile.config
|
|
|
|
OPTIMIZE = 1
|
|
|
|
ifeq ($(OPTIMIZE), 1)
|
|
GLOBAL_CXXFLAGS += -O3
|
|
else
|
|
GLOBAL_CXXFLAGS += -O0
|
|
endif
|
|
|
|
include mk/lib.mk
|
|
|
|
GLOBAL_CXXFLAGS += -g -Wall -include config.h -std=c++17
|