aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile23
1 files changed, 18 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index ba36df6..a598e0b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,15 @@
-CC := gcc
-CFLAGS := -Wall -Wextra -O2 -Isrc -I/usr/include/libxml2
+OS := $(shell uname -s)
+
+ifeq ($(OS), FreeBSD)
+ CC := clang
+ CFLAGS := -Wall -Wextra -O2 -Isrc -I/usr/local/include/libxml2 -I/usr/local/include
+ LDFLAGS := -L/usr/local/lib
+else
+ CC := gcc
+ CFLAGS := -Wall -Wextra -O2 -Isrc -I/usr/include/libxml2
+ LDFLAGS :=
+endif
+
LIBS := -lbeaker -lcurl -lxml2 -lpthread -lm
SRC_DIR := src
@@ -7,7 +17,6 @@ BIN_DIR := bin
OBJ_DIR := obj
SRCS := $(shell find $(SRC_DIR) -name '*.c')
-
OBJS := $(SRCS:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o)
TARGET := $(BIN_DIR)/omnisearch
@@ -16,8 +25,8 @@ all: $(TARGET)
$(TARGET): $(OBJS)
@mkdir -p $(BIN_DIR)
- $(CC) $(OBJS) -o $@ $(LIBS)
- @echo "Build complete: $(TARGET)"
+ $(CC) $(OBJS) -o $@ $(LDFLAGS) $(LIBS)
+ @echo "Build complete for $(OS): $(TARGET)"
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c
@mkdir -p $(dir $@)
@@ -34,6 +43,10 @@ clean:
rebuild: clean all
info:
+ @echo "Detected OS: $(OS)"
+ @echo "Compiler: $(CC)"
+ @echo "CFlags: $(CFLAGS)"
+ @echo ""
@echo "Sources to compile:"
@echo "$(SRCS)" | tr ' ' '\n'
@echo ""