diff options
| author | Po Lu | 2023-02-19 21:52:21 +0800 |
|---|---|---|
| committer | Po Lu | 2023-02-19 21:52:21 +0800 |
| commit | 585ee91b21fb6f1889226b5861333410275dc017 (patch) | |
| tree | 309abc8ce39ff119a353d6ef1f903428d12ad1c1 /java | |
| parent | f3196052070999ef9f9c822a676443b14df6a0e6 (diff) | |
| download | emacs-585ee91b21fb6f1889226b5861333410275dc017.tar.gz emacs-585ee91b21fb6f1889226b5861333410275dc017.zip | |
More fixes to parallel Make
* cross/ndk-build/ndk-build.mk.in (NDK_BUILD_MODULES)
(NDK_BUILD_SHARED, NDK_BUILD_STATIC): Define group rule to build
all files so that they are built within one make process.
* java/Makefile.in: Reorganize cross compilation and make sure
there is only one make subprocess for each subdirectory of
cross.
Diffstat (limited to 'java')
| -rw-r--r-- | java/Makefile.in | 40 |
1 files changed, 25 insertions, 15 deletions
diff --git a/java/Makefile.in b/java/Makefile.in index 52e0a7a75f1..482419f07fa 100644 --- a/java/Makefile.in +++ b/java/Makefile.in | |||
| @@ -113,33 +113,43 @@ APK_NAME := emacs-$(version)-$(ANDROID_MIN_SDK)-$(ANDROID_ABI).apk | |||
| 113 | all: $(APK_NAME) | 113 | all: $(APK_NAME) |
| 114 | 114 | ||
| 115 | # Binaries to cross-compile. | 115 | # Binaries to cross-compile. |
| 116 | CROSS_BINS = ../cross/src/android-emacs ../cross/lib-src/ctags \ | 116 | CROSS_SRC_BINS = $(top_builddir)/cross/src/android-emacs |
| 117 | ../cross/lib-src/hexl ../cross/lib-src/movemail \ | 117 | CROSS_LIBSRC_BINS = $(top_builddir)/cross/lib-src/ctags \ |
| 118 | ../cross/lib-src/ebrowse ../cross/lib-src/emacsclient \ | 118 | $(top_builddir)/cross/lib-src/hexl \ |
| 119 | ../cross/lib-src/etags | 119 | $(top_builddir)/cross/lib-src/movemail \ |
| 120 | $(top_builddir)/cross/lib-src/ebrowse \ | ||
| 121 | $(top_builddir)/cross/lib-src/emacsclient \ | ||
| 122 | $(top_builddir)/cross/lib-src/etags | ||
| 123 | CROSS_BINS = $(CROSS_SRC_BINS) $(CROSS_LIBSRC_BINS) | ||
| 120 | 124 | ||
| 121 | # Libraries to cross-compile. | 125 | # Libraries to cross-compile. |
| 122 | CROSS_LIBS = ../cross/src/libemacs.so | 126 | CROSS_LIBS = $(top_builddir)/cross/src/libemacs.so |
| 123 | 127 | ||
| 124 | # Make sure gnulib is built first! | 128 | # Make sure gnulib is built first! |
| 125 | # If not, then the recursive invocations of make below will try to | 129 | # If not, then the recursive invocations of make below will try to |
| 126 | # build gnulib at the same time. | 130 | # build gnulib at the same time. |
| 127 | CROSS_ARCHIVES = ../cross/lib/libgnu.a | 131 | CROSS_ARCHIVES = $(top_builddir)/cross/lib/libgnu.a |
| 128 | 132 | ||
| 129 | # Third party libraries to compile. | 133 | # Third party libraries to compile. |
| 130 | include $(top_builddir)/cross/ndk-build/ndk-build.mk | 134 | include $(top_builddir)/cross/ndk-build/ndk-build.mk |
| 131 | 135 | ||
| 132 | .PHONY: $(CROSS_BINS) $(CROSS_LIBS) $(CROSS_ARCHIVES) | 136 | .PHONY: $(CROSS_BINS) $(CROSS_LIBS) $(CROSS_ARCHIVES) |
| 133 | 137 | ||
| 134 | ../cross/src/android-emacs ../cross/src/libemacs.so: $(CROSS_ARCHIVES) | 138 | # There should only be a single invocation of $(MAKE) -C |
| 135 | $(MAKE) -C ../cross src/$(notdir $@) | 139 | # $(top_srcdir)/cross for each directory under $(top_srcdir)/cross. |
| 136 | 140 | $(CROSS_SRC_BINS) $(CROSS_LIBS) &: $(CROSS_ARCHIVES) | |
| 137 | ../cross/lib-src/hexl ../cross/lib-src/movemail \ | 141 | $(MAKE) -C $(top_builddir)/cross $(foreach file, \ |
| 138 | ../cross/lib-src/ctags ../cross/lib-src/ebrowse &: $(CROSS_ARCHIVES) | 142 | $(CROSS_SRC_BINS) \ |
| 139 | $(MAKE) -C ../cross lib-src/$(notdir $@) | 143 | $(CROSS_LIBS), \ |
| 140 | 144 | src/$(notdir $(file))) | |
| 141 | ../cross/lib/libgnu.a: | 145 | |
| 142 | $(MAKE) -C ../cross lib/libgnu.a | 146 | $(CROSS_LIBSRC_BINS) &: $(CROSS_ARCHIVES) |
| 147 | $(MAKE) -C $(top_builddir)/cross $(foreach file, \ | ||
| 148 | $(CROSS_LIBSRC_BINS), \ | ||
| 149 | lib-src/$(notdir $(file))) | ||
| 150 | |||
| 151 | $(CROSS_ARCHIVES): | ||
| 152 | $(MAKE) -C $(top_builddir)/cross lib/libgnu.a | ||
| 143 | 153 | ||
| 144 | # This is needed to generate the ``.directory-tree'' file used by the | 154 | # This is needed to generate the ``.directory-tree'' file used by the |
| 145 | # Android emulations of readdir and faccessat. | 155 | # Android emulations of readdir and faccessat. |