]> arthur.barton.de Git - bup.git/blobdiff - GNUmakefile
README: fix and simplify cirrus badges
[bup.git] / GNUmakefile
index 75dd85c3b0ada1850f5ad2266a5b6c100a3d5a44..30f1b3a1cacab7f09f61da6c57f7e7c3c579d58c 100644 (file)
@@ -34,6 +34,7 @@ os := $(call shout,$(os),Unable to determine OS)
 
 # Satisfy --warn-undefined-variables
 CFLAGS ?=
+DESTDIR ?=
 CPPFLAGS ?=
 LDFLAGS ?=
 TARGET_ARCH ?=
@@ -43,6 +44,8 @@ bup_shared_cflags := -Wno-unused-command-line-argument $(bup_shared_cflags)
 bup_shared_cflags := -Wno-unknown-pragmas -Wsign-compare $(bup_shared_cflags)
 bup_shared_cflags := -D_FILE_OFFSET_BITS=64 $(bup_shared_cflags)
 
+bup_shared_ldflags :=
+
 soext := .so
 ifeq ($(os),CYGWIN)
   soext := .dll
@@ -58,16 +61,15 @@ initial_setup := $(shell dev/update-checkout-info lib/bup/checkout_info.py $(iso
 initial_setup := $(call shout,$(initial_setup),update-checkout-info failed))
 clean_paths += lib/bup/checkout_info.py
 
-config/config.vars: \
-  configure config/configure config/configure.inc \
-  $(wildcard config/*.in)
+# Dependency changes here should be mirrored in Makefile
+config/config.vars: configure config/configure config/configure.inc config/*.in
        MAKE="$(MAKE)" ./configure
 
 # On some platforms, Python.h and readline.h fight over the
 # _XOPEN_SOURCE version, i.e. -Werror crashes on a mismatch, so for
 # now, we're just going to let Python's version win.
 
-helpers_cflags := $(bup_python_cflags) $(bup_shared_cflags)
+helpers_cflags := $(bup_python_cflags) $(bup_shared_cflags) -I$(CURDIR)/src
 helpers_ldflags := $(bup_python_ldflags) $(bup_shared_ldflags)
 
 ifneq ($(strip $(bup_readline_cflags)),)
@@ -130,7 +132,8 @@ install: all
        $(INSTALL) -pm 0755 lib/cmd/bup "$(dest_libdir)/cmd/bup"
        $(INSTALL) -pm 0755 $(bup_ext_cmds) "$(dest_libdir)/cmd/"
        cd "$(dest_bindir)" && \
-         ln -sf "$$($(bup_python) -c 'import os; print(os.path.relpath("$(abspath $(dest_libdir))/cmd/bup"))')"
+         ln -sf "$$($(CURDIR)/dev/python -c 'import os; print(os.path.relpath("$(abspath $(dest_libdir))/cmd/bup"))')" \
+           .
        set -e; \
        $(INSTALL) -pm 0644 lib/bup/*.py $(dest_libdir)/bup/
        $(INSTALL) -pm 0644 lib/bup/cmd/*.py $(dest_libdir)/bup/cmd/
@@ -191,7 +194,7 @@ lib/cmd/bup: lib/cmd/bup.c src/bup/compat.c src/bup/io.c
 clean_paths += lib/bup/_helpers$(soext)
 generated_dependencies += lib/bup/_helpers.d
 lib/bup/_helpers$(soext): lib/bup/_helpers.c lib/bup/bupsplit.c
-       $(CC) $(helpers_cflags) $(CFLAGS) -shared -fPIC $^ \
+       $(CC) $(helpers_cflags) $(CFLAGS) $^ \
          $(helpers_ldflags) $(LDFLAGS) $(OUTPUT_OPTION)
 
 test/tmp:
@@ -203,12 +206,16 @@ get_parallel_n = $(patsubst -j%,%,$(parallel_opt))
 maybe_specific_n = $(if $(filter -j%,$(parallel_opt)),-n$(get_parallel_n))
 xdist_opt = $(if $(filter -j,$(parallel_opt)),-nauto,$(maybe_specific_n))
 
-test: all test/tmp dev/python
-        if test yes = "$$(dev/python -c 'import xdist; print("yes")' 2>/dev/null)"; then \
+lint: dev/bup-exec dev/bup-python
+       ./pylint
+
+test: all test/tmp dev/python lint
+       ./bup features
+       if test yes = "$$(dev/python -c 'import xdist; print("yes")' 2>/dev/null)"; then \
           (set -x; ./pytest $(xdist_opt);) \
-        else \
-          (set -x; ./pytest;) \
-        fi
+       else \
+         (set -x; ./pytest;) \
+       fi
 
 stupid:
        PATH=/bin:/usr/bin $(MAKE) test
@@ -273,7 +280,7 @@ import-docs: Documentation/clean
        $(pf); git archive origin/man | (cd Documentation && tar -xvf -)
 
 clean: Documentation/clean
-       cd config && rm -rf config.var
+       cd config && rm -rf finished bin config.var
        cd config && rm -f \
          ${CONFIGURE_DETRITUS} ${CONFIGURE_FILES} ${GENERATED_FILES}
        rm -rf $(clean_paths) .pytest_cache