aboutsummaryrefslogtreecommitdiff
path: root/bindings/Makefile.local
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2021-10-30 17:48:54 -0300
committerDavid Bremner <david@tethera.net>2021-12-04 15:21:54 -0400
commit904c067f32ce29f582c711c0ce631df9b8d4edfc (patch)
treedeec6aa5adeacd8776dfdfb0417f277b360ef035 /bindings/Makefile.local
parent20b2150406e1f80af6417ac601ff366de7eb804b (diff)
ruby: don't use a directory as a target.
The directory is (neccesarily) not updated by the build, so it keeps trying to build. The proposed fix is to use the name of the dynamic library containing the extension. This is a partial fix for the rebuilding reported at [1]. [1]: id:87r29wwgq2.fsf@fifthhorseman.net
Diffstat (limited to 'bindings/Makefile.local')
-rw-r--r--bindings/Makefile.local10
1 files changed, 6 insertions, 4 deletions
diff --git a/bindings/Makefile.local b/bindings/Makefile.local
index 3672e69f..1cdd28a0 100644
--- a/bindings/Makefile.local
+++ b/bindings/Makefile.local
@@ -3,21 +3,23 @@
dir := bindings
# force the shared library to be built
-ruby-bindings: lib/$(LINKER_NAME)
+ruby-bindings: $(dir)/ruby.stamp
+
+$(dir)/ruby.stamp: lib/$(LINKER_NAME)
ifeq ($(HAVE_RUBY_DEV),1)
cd $(dir)/ruby && \
EXTRA_LDFLAGS="$(NO_UNDEFINED_LDFLAGS)" \
LIBNOTMUCH="../../lib/$(LINKER_NAME)" \
NOTMUCH_SRCDIR='$(NOTMUCH_SRCDIR)' \
$(RUBY) extconf.rb --vendor
- $(MAKE) -C $(dir)/ruby CFLAGS="$(CFLAGS) -pipe -fno-plt -fPIC"
+ $(MAKE) -C $(dir)/ruby CFLAGS="$(CFLAGS) -pipe -fno-plt -fPIC" && touch $@
endif
python-cffi-bindings: lib/$(LINKER_NAME)
ifeq ($(HAVE_PYTHON3_CFFI),1)
cd $(dir)/python-cffi && \
${PYTHON} setup.py build --build-lib build/stage && \
- mkdir -p build/stage/tests && cp tests/*.py build/stage/tests
+ mkdir -p build/stage/tests && cp tests/*.py build/stage/tests && touch ../../$@
endif
CLEAN += $(patsubst %,$(dir)/ruby/%, \
@@ -26,6 +28,6 @@ CLEAN += $(patsubst %,$(dir)/ruby/%, \
init.o message.o messages.o mkmf.log notmuch.so query.o \
status.o tags.o thread.o threads.o)
-CLEAN += bindings/ruby/.vendorarchdir.time
+CLEAN += bindings/ruby/.vendorarchdir.time $(dir)/ruby.stamp
CLEAN += bindings/python-cffi/build