Skip to content

Commit d26f836

Browse files
authored
fix dynlib for macos build
Signed-off-by: Rui Chen <rui@chenrui.dev>
1 parent 0b1fc79 commit d26f836

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

Makefile

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,30 @@ OBJ_PATH ?= obj
77

88
# platform specific settings:
99
ifeq ($(PLATFORM), Linux)
10-
LDFLAGS = -lm -ldl
11-
RANLIB = ar -crs
10+
LDFLAGS = -lm -ldl
11+
RANLIB = ar -crs
12+
LIBEXT = so
13+
DYNAMIC_CFLAGS_EXTRA = -shared -fvisibility=hidden
1214
else ifeq ($(PLATFORM), Darwin)
13-
LDFLAGS =
14-
RANLIB = libtool -static -o
15+
LDFLAGS =
16+
RANLIB = libtool -static -o
17+
LIBEXT = dylib
18+
DYNAMIC_CFLAGS_EXTRA = -dynamiclib -fvisibility=hidden
1519
else ifneq ($(findstring MINGW64_NT,$(PLATFORM)),)
16-
LDFLAGS = -lm
17-
RANLIB = ar -crs
20+
LDFLAGS = -lm
21+
RANLIB = ar -crs
22+
LIBEXT = so
23+
DYNAMIC_CFLAGS_EXTRA = -shared -fvisibility=hidden
1824
endif
1925

2026
# identical for all platforms:
2127
UMKA_LIB_STATIC = $(BUILD_PATH)/libumka.a
22-
UMKA_LIB_DYNAMIC = $(BUILD_PATH)/libumka.so
28+
UMKA_LIB_DYNAMIC = $(BUILD_PATH)/libumka.$(LIBEXT)
2329
UMKA_EXE = $(BUILD_PATH)/umka
2430

2531
CFLAGS = -s -fPIC -O3 -Wall -Wno-format-security -malign-double -fno-strict-aliasing -DUMKA_EXT_LIBS
2632
STATIC_CFLAGS = $(CFLAGS) -DUMKA_STATIC
27-
DYNAMIC_CFLAGS = $(CFLAGS) -DUMKA_BUILD -shared -fvisibility=hidden
33+
DYNAMIC_CFLAGS = $(CFLAGS) -DUMKA_BUILD $(DYNAMIC_CFLAGS_EXTRA)
2834

2935
SRCS = $(filter-out src/umka.c,$(wildcard src/*.c))
3036
OBJS_STATIC = $(sort $(SRCS:src/%.c=$(OBJ_PATH)/%_static.o))

0 commit comments

Comments
 (0)