CC = gcc # Detect OS OS := $(shell uname -s) # Set flags based on OS ifeq ($(OS),Linux) CFLAGS = -Wall -w -g -Wno-format-truncation -Wno-implicit-function-declaration -I/usr/local/include LDFLAGS = -L/usr/local/lib -lcurl -ljson-c -lzip else # macOS or other CFLAGS = -Wall -w -g -Wno-implicit-function-declaration -I/usr/local/include -I/opt/homebrew/include -I/opt/homebrew/opt/json-c/include -I/opt/homebrew/opt/libzip/include LDFLAGS = -L/usr/local/lib -L/opt/homebrew/lib -L/opt/homebrew/opt/json-c/lib -L/opt/homebrew/opt/libzip/lib -lcurl -ljson-c -lzip endif TARGET = exp SRCS = exploit_cli.c commands.c commands2.c commands3.c commands4.c OBJS = $(SRCS:.c=.o) .PHONY: all clean all: $(TARGET) $(TARGET): $(OBJS) $(CC) -o $@ $^ $(LDFLAGS) %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ clean: rm -f $(TARGET) $(OBJS)