-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #11826 from DeterminateSystems/revert-11804
Revert "Merge pull request #11804 from obsidiansystems/remove-old-make"
- Loading branch information
Showing
134 changed files
with
4,722 additions
and
75 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,129 @@ | ||
# External build directory support | ||
|
||
include mk/build-dir.mk | ||
|
||
-include $(buildprefix)Makefile.config | ||
clean-files += $(buildprefix)Makefile.config | ||
|
||
# List makefiles | ||
|
||
include mk/platform.mk | ||
|
||
ifeq ($(ENABLE_BUILD), yes) | ||
makefiles = \ | ||
mk/precompiled-headers.mk \ | ||
local.mk \ | ||
src/libutil/local.mk \ | ||
src/libstore/local.mk \ | ||
src/libfetchers/local.mk \ | ||
src/libmain/local.mk \ | ||
src/libexpr/local.mk \ | ||
src/libflake/local.mk \ | ||
src/libcmd/local.mk \ | ||
src/nix/local.mk \ | ||
src/libutil-c/local.mk \ | ||
src/libstore-c/local.mk \ | ||
src/libexpr-c/local.mk | ||
|
||
ifdef HOST_UNIX | ||
makefiles += \ | ||
scripts/local.mk \ | ||
maintainers/local.mk \ | ||
misc/bash/local.mk \ | ||
misc/fish/local.mk \ | ||
misc/zsh/local.mk \ | ||
misc/systemd/local.mk \ | ||
misc/launchd/local.mk \ | ||
misc/upstart/local.mk | ||
endif | ||
endif | ||
|
||
ifeq ($(ENABLE_UNIT_TESTS), yes) | ||
makefiles += \ | ||
src/libutil-tests/local.mk \ | ||
src/libutil-test-support/local.mk \ | ||
src/libstore-tests/local.mk \ | ||
src/libstore-test-support/local.mk \ | ||
src/libfetchers-tests/local.mk \ | ||
src/libexpr-tests/local.mk \ | ||
src/libexpr-test-support/local.mk \ | ||
src/libflake-tests/local.mk | ||
endif | ||
|
||
ifeq ($(ENABLE_FUNCTIONAL_TESTS), yes) | ||
ifdef HOST_UNIX | ||
makefiles += \ | ||
tests/functional/local.mk \ | ||
tests/functional/flakes/local.mk \ | ||
tests/functional/ca/local.mk \ | ||
tests/functional/git-hashing/local.mk \ | ||
tests/functional/dyn-drv/local.mk \ | ||
tests/functional/local-overlay-store/local.mk \ | ||
tests/functional/test-libstoreconsumer/local.mk \ | ||
tests/functional/plugins/local.mk | ||
endif | ||
endif | ||
|
||
# Some makefiles require access to built programs and must be included late. | ||
makefiles-late = | ||
|
||
ifeq ($(ENABLE_DOC_GEN), yes) | ||
makefiles-late += doc/manual/local.mk | ||
endif | ||
|
||
# Miscellaneous global Flags | ||
|
||
OPTIMIZE = 1 | ||
|
||
ifeq ($(OPTIMIZE), 1) | ||
GLOBAL_CXXFLAGS += -O3 $(CXXLTO) | ||
GLOBAL_LDFLAGS += $(CXXLTO) | ||
else | ||
GLOBAL_CXXFLAGS += -O0 -U_FORTIFY_SOURCE | ||
unexport NIX_HARDENING_ENABLE | ||
endif | ||
|
||
ifdef HOST_WINDOWS | ||
# Windows DLLs are stricter about symbol visibility than Unix shared | ||
# objects --- see https://gcc.gnu.org/wiki/Visibility for details. | ||
# This is a temporary sledgehammer to export everything like on Unix, | ||
# and not detail with this yet. | ||
# | ||
# TODO do not do this, and instead do fine-grained export annotations. | ||
GLOBAL_LDFLAGS += -Wl,--export-all-symbols | ||
GLOBAL_CXXFLAGS += -D_WIN32_WINNT=0x0602 | ||
endif | ||
|
||
GLOBAL_CXXFLAGS += -g -Wall -Wdeprecated-copy -Wignored-qualifiers -Wimplicit-fallthrough -Werror=unused-result -Werror=suggest-override -include $(buildprefix)config.h -std=c++2a -I src | ||
|
||
# Include the main lib, causing rules to be defined | ||
|
||
include mk/lib.mk | ||
|
||
# Fallback stub rules for better UX when things are disabled | ||
# | ||
# These must be defined after `mk/lib.mk`. Otherwise the first rule | ||
# incorrectly becomes the default target. | ||
|
||
ifneq ($(ENABLE_UNIT_TESTS), yes) | ||
.PHONY: check | ||
check: | ||
@echo "Unit tests are disabled. Configure without '--disable-unit-tests', or avoid calling 'make check'." | ||
@exit 1 | ||
endif | ||
|
||
ifneq ($(ENABLE_FUNCTIONAL_TESTS), yes) | ||
.PHONY: installcheck | ||
installcheck: | ||
@echo "Functional tests are disabled. Configure without '--disable-functional-tests', or avoid calling 'make installcheck'." | ||
@exit 1 | ||
endif | ||
|
||
# Documentation fallback stub rules. | ||
|
||
ifneq ($(ENABLE_DOC_GEN), yes) | ||
.PHONY: manual-html manpages | ||
manual-html manpages: | ||
@echo "Generated docs are disabled. Configure without '--disable-doc-gen', or avoid calling 'make manpages' and 'make manual-html'." | ||
@exit 1 | ||
endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
AR = @AR@ | ||
BDW_GC_LIBS = @BDW_GC_LIBS@ | ||
BOOST_LDFLAGS = @BOOST_LDFLAGS@ | ||
BUILD_SHARED_LIBS = @BUILD_SHARED_LIBS@ | ||
CC = @CC@ | ||
CFLAGS = @CFLAGS@ | ||
CXX = @CXX@ | ||
CXXFLAGS = @CXXFLAGS@ | ||
CXXLTO = @CXXLTO@ | ||
EDITLINE_LIBS = @EDITLINE_LIBS@ | ||
ENABLE_BUILD = @ENABLE_BUILD@ | ||
ENABLE_DOC_GEN = @ENABLE_DOC_GEN@ | ||
ENABLE_FUNCTIONAL_TESTS = @ENABLE_FUNCTIONAL_TESTS@ | ||
ENABLE_S3 = @ENABLE_S3@ | ||
ENABLE_UNIT_TESTS = @ENABLE_UNIT_TESTS@ | ||
GTEST_LIBS = @GTEST_LIBS@ | ||
HAVE_LIBCPUID = @HAVE_LIBCPUID@ | ||
HAVE_SECCOMP = @HAVE_SECCOMP@ | ||
HOST_OS = @host_os@ | ||
INSTALL_UNIT_TESTS = @INSTALL_UNIT_TESTS@ | ||
LDFLAGS = @LDFLAGS@ | ||
LIBARCHIVE_LIBS = @LIBARCHIVE_LIBS@ | ||
LIBBROTLI_LIBS = @LIBBROTLI_LIBS@ | ||
LIBCURL_LIBS = @LIBCURL_LIBS@ | ||
LIBGIT2_LIBS = @LIBGIT2_LIBS@ | ||
LIBSECCOMP_LIBS = @LIBSECCOMP_LIBS@ | ||
LOWDOWN_LIBS = @LOWDOWN_LIBS@ | ||
OPENSSL_LIBS = @OPENSSL_LIBS@ | ||
PACKAGE_NAME = @PACKAGE_NAME@ | ||
PACKAGE_VERSION = @PACKAGE_VERSION@ | ||
SHELL = @bash@ | ||
SODIUM_LIBS = @SODIUM_LIBS@ | ||
SQLITE3_LIBS = @SQLITE3_LIBS@ | ||
bash = @bash@ | ||
bindir = @bindir@ | ||
checkbindir = @checkbindir@ | ||
checklibdir = @checklibdir@ | ||
datadir = @datadir@ | ||
datarootdir = @datarootdir@ | ||
docdir = @docdir@ | ||
embedded_sandbox_shell = @embedded_sandbox_shell@ | ||
exec_prefix = @exec_prefix@ | ||
includedir = @includedir@ | ||
libdir = @libdir@ | ||
libexecdir = @libexecdir@ | ||
localstatedir = @localstatedir@ | ||
lsof = @lsof@ | ||
mandir = @mandir@ | ||
pkglibdir = $(libdir)/$(PACKAGE_NAME) | ||
prefix = @prefix@ | ||
sandbox_shell = @sandbox_shell@ | ||
storedir = @storedir@ | ||
sysconfdir = @sysconfdir@ | ||
system = @system@ |
Oops, something went wrong.