From: David Bremner Date: Sat, 30 Oct 2021 20:48:54 +0000 (-0300) Subject: ruby: don't use a directory as a target. X-Git-Tag: 0.35_rc0~76 X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=904c067f32ce29f582c711c0ce631df9b8d4edfc;p=notmuch-old 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 --- 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