2025-06-08 11:19:45 +03:00
|
|
|
CC = gcc
|
|
|
|
|
CFLAGS = -Wall -Wextra -fPIC
|
2025-06-10 15:48:29 +03:00
|
|
|
NIMFLAGS = --app:lib
|
2025-06-08 11:19:45 +03:00
|
|
|
|
|
|
|
|
# Directories
|
|
|
|
|
SRC_DIR = ../../src
|
|
|
|
|
BUILD_DIR = .
|
|
|
|
|
|
|
|
|
|
# Targets
|
|
|
|
|
SHARED_LIB = libchatsdk.so
|
|
|
|
|
STATIC_LIB = libchatsdk.a
|
|
|
|
|
HEADER = chatsdk.h
|
|
|
|
|
|
|
|
|
|
.PHONY: all clean shared static
|
|
|
|
|
|
|
|
|
|
all: shared static
|
|
|
|
|
|
|
|
|
|
shared: $(SHARED_LIB)
|
|
|
|
|
|
|
|
|
|
static: $(STATIC_LIB)
|
|
|
|
|
|
|
|
|
|
$(SHARED_LIB): $(SRC_DIR)/chat_sdk.nim $(HEADER)
|
2025-06-10 15:48:29 +03:00
|
|
|
cd $(SRC_DIR) && nim c $(NIMFLAGS) --out:../library/c-bindings/$(SHARED_LIB) chat_sdk.nim
|
2025-06-08 11:19:45 +03:00
|
|
|
|
|
|
|
|
$(STATIC_LIB): $(SRC_DIR)/chat_sdk.nim $(HEADER)
|
2025-06-10 15:48:29 +03:00
|
|
|
cd $(SRC_DIR) && nim c $(NIMFLAGS) --app:staticLib --out:../library/c-bindings/$(STATIC_LIB) chat_sdk.nim
|
2025-06-08 11:19:45 +03:00
|
|
|
|
|
|
|
|
clean:
|
|
|
|
|
rm -f $(SHARED_LIB) $(STATIC_LIB) *.o *.so *.a
|
|
|
|
|
rm -rf nimcache
|
|
|
|
|
|
|
|
|
|
install: $(SHARED_LIB) $(HEADER)
|
|
|
|
|
sudo cp $(SHARED_LIB) /usr/local/lib/
|
|
|
|
|
sudo cp $(HEADER) /usr/local/include/
|
|
|
|
|
sudo ldconfig
|