aggiunta logica di gestione dati. Assistito con ai
This commit is contained in:
1 parent
1a15d93f76
commit
5db402c7cf
10 files changed
+769
-71
No files matched your search
@@ -1,28 +1,39 @@
|
||||
CC = gcc
|
||||
CFLAGS = -I./include -Wall -Wextra -MMD -MP
|
||||
LDLIBS = -lncurses
|
||||
CC ?= gcc
|
||||
PKG_CONFIG ?= pkg-config
|
||||
|
||||
CFLAGS = -I./include -Wall -Wextra -MMD -MP $(shell $(PKG_CONFIG) --cflags json-c ncurses)
|
||||
LDLIBS = $(shell $(PKG_CONFIG) --libs json-c ncurses)
|
||||
|
||||
BUNDLE_LDFLAGS = -Wl,--dynamic-linker=/lib64/ld-linux-x86-64.so.2 -Wl,-rpath,'$$ORIGIN/lib'
|
||||
|
||||
SRC_DIR = src
|
||||
BUILD_DIR = build
|
||||
SOURCES = $(filter-out $(SRC_DIR)/testLogic.c, $(wildcard $(SRC_DIR)/*.c))
|
||||
OBJECTS = $(patsubst $(SRC_DIR)/%.c,$(BUILD_DIR)/%.o,$(SOURCES))
|
||||
TEST_SOURCES = $(SRC_DIR)/logic.c $(SRC_DIR)/testLogic.c
|
||||
TEST_OBJECTS = $(patsubst $(SRC_DIR)/%.c,$(BUILD_DIR)/%.o,$(TEST_SOURCES))
|
||||
EXEC = productManager
|
||||
EXECTEST = test
|
||||
DEPS = $(OBJECTS:.o=.d)
|
||||
|
||||
all: $(EXEC)
|
||||
|
||||
# 1. Per testare in locale su NixOS
|
||||
$(EXEC): $(OBJECTS)
|
||||
$(CC) $^ -o $@ $(LDLIBS)
|
||||
|
||||
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.c
|
||||
@mkdir -p $(@D)
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
-include $(DEPS)
|
||||
|
||||
test: $(TEST_OBJECTS)
|
||||
$(CC) $^ -o $(EXECTEST) $(LDLIBS)
|
||||
# 2. Per creare il pacchetto portabile da inviare
|
||||
bundle: $(OBJECTS)
|
||||
@mkdir -p dist/lib
|
||||
$(CC) $^ -o dist/$(EXEC) $(BUNDLE_LDFLAGS) $(LDLIBS)
|
||||
@cp -L $$( $(PKG_CONFIG) --variable=libdir json-c )/libjson-c.so* dist/lib/
|
||||
@cp -L $$( $(PKG_CONFIG) --variable=libdir ncurses )/libncurses*.so* dist/lib/
|
||||
@echo "=== Pacchetto portabile creato con successo in ./dist ==="
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILD_DIR) $(EXEC) $(EXECTEST)
|
||||
rm -rf $(BUILD_DIR) $(EXEC) dist *.json
|
||||
|
||||
.PHONY: all clean
|
||||
.PHONY: all clean bundle
|
||||
Reference in new issue
Block a user