|
1 | 1 | ############################################################################# |
2 | | -# Common Makefile for Win64 VM using LLVM/Clang compiler, MSYS2 toolchain, |
| 2 | +# Common Makefile for Win64ARMv8 VM using LLVM/Clang compiler, MSYS2 toolchain, |
3 | 3 | # and mingw-w64 for building a native Windows application. |
4 | 4 | # |
5 | 5 | # Visit: https://www.msys2.org/ |
@@ -118,7 +118,9 @@ LIBS:= $(addprefix $(OBJDIR)/, $(addsuffix .lib, $(INTERNAL_PLUGINS))) |
118 | 118 | DLLS:= $(addprefix $(OBJDIR)/, $(addsuffix .dll, $(EXTERNAL_PLUGINS))) |
119 | 119 |
|
120 | 120 | ifdef BIT_IDENTICAL_FLOATING_POINT |
121 | | -LIBS:=$(BUILD)/fdlibm/libm.a $(LIBS) |
| 121 | +LIBM_LIB?=libm.a |
| 122 | +export LIBM_LIB |
| 123 | +LIBS:=$(BUILD)/fdlibm/$(LIBM_LIB) $(LIBS) |
122 | 124 | export BIT_IDENTICAL_FLOATING_POINT |
123 | 125 | endif |
124 | 126 |
|
@@ -300,10 +302,12 @@ $(OBJDIR)/%.dll: always |
300 | 302 | JMPOBJ=$(JMPOBJ) VMLIB=$(OBJDIR)/$(VMLIB) \ |
301 | 303 | COGDEFS="$(COGDEFS) -DSQUEAK_EXTERNAL_PLUGIN=$(*F)" $(OBJDIR)/$(*F).dll |
302 | 304 |
|
| 305 | +# Build fdlibm with GNU ar and GNU ranlib. Override $(LIBM_LIB) and add |
| 306 | +# custom rule to choose, e.g., different librarian method. |
303 | 307 | $(BUILD)/fdlibm/libm.a: |
304 | 308 | @-$(MKDIR) $(@D) |
305 | 309 | $(MAKE) CC='$(CC)' CFLAGS="$(CFLAGS) -D_IEEE_LIBM" -C $(@D) \ |
306 | | - TP=../../$(TPDIR) -f ../../$(TPDIR)/fdlibm/Makefile.remote |
| 310 | + TP=../../$(TPDIR) -f ../../$(TPDIR)/fdlibm/Makefile.remote libm.a |
307 | 311 |
|
308 | 312 |
|
309 | 313 | ############################################################################# |
|
0 commit comments