|
29 | 29 | COPT = -Os #-DNDEBUG |
30 | 30 | endif |
31 | 31 |
|
32 | | -LDFLAGS = $(LDFLAGS_MOD) -lm -Wl$(LDFLAGS_MAP_EXTRA) $(LDFLAGS_EXTRA) |
| 32 | +# On OSX, 'gcc' is a symlink to clang unless a real gcc is installed. |
| 33 | +# The unix port of micropython on OSX must be compiled with clang, |
| 34 | +# while cross-compile ports require gcc, so we test here for OSX and |
| 35 | +# if necessary override the value of 'CC' set in py/mkenv.mk |
33 | 36 | ifeq ($(UNAME_S),Darwin) |
34 | | -# Force OSX to use clang even if gcc is present, value set in mkenv.mk |
35 | | -# must be ovewritten here to avoid breaking stmhal build on OSX |
36 | 37 | CC = clang |
37 | | -# Use clang syntax for LDFLAGS |
38 | | -LDFLAGS_MAP_EXTRA = ,-map,$@.map |
| 38 | +# Use clang syntax for map file and set osx specific flags |
| 39 | +LDFLAGS_ARCH = -Wl,-order_file,$(BUILD)/order.def -Wl,-map,$@.map |
39 | 40 | else |
40 | | -# Use gcc syntax |
41 | | -LDFLAGS_MAP_EXTRA = ,-Map=$@.map,--cref |
| 41 | +# Use gcc syntax for map file |
| 42 | +LDFLAGS_ARCH = -Wl,-Map=$@.map,--cref |
42 | 43 | endif |
| 44 | +LDFLAGS = $(LDFLAGS_MOD) $(LDFLAGS_ARCH) -lm $(LDFLAGS_EXTRA) |
43 | 45 |
|
44 | 46 | ifeq ($(MICROPY_FORCE_32BIT),1) |
45 | 47 | CFLAGS += -m32 |
@@ -89,9 +91,6 @@ SRC_C = \ |
89 | 91 | $(SRC_MOD) |
90 | 92 |
|
91 | 93 | ifeq ($(UNAME_S),Darwin) |
92 | | - |
93 | | -LDFLAGS += -Wl,-order_file,$(BUILD)/order.def |
94 | | - |
95 | 94 | # Must be the last file in list of sources |
96 | 95 | SRC_C += seg_helpers.c |
97 | 96 |
|
|
0 commit comments