42 lines
892 B
Makefile
42 lines
892 B
Makefile
ifeq ($(PREFIX),)
|
|
PREFIX := /usr/local
|
|
endif
|
|
|
|
CXX = g++
|
|
|
|
INCS += -I./include
|
|
LIBS += -L./lib
|
|
|
|
LINKS += -lggml -lggml-base -lllama -lencodec -lespeak-ng
|
|
FLAGS += -march=native -O3 -DVALL_E_EXPORTS
|
|
|
|
SRCS := $(shell find ./ -name "*.cpp")
|
|
OBJS += $(patsubst %.cpp,%.o,$(SRCS))
|
|
|
|
TARGET = vall_e
|
|
TARGET_LIB = lib$(TARGET).so
|
|
TARGET_HEADER = $(TARGET).h
|
|
|
|
|
|
%.o: %.cpp
|
|
$(CXX) $(FLAGS) $(INCS) -c $< -o $@
|
|
|
|
$(TARGET): $(OBJS)
|
|
$(CXX) $(FLAGS) $(OBJS) $(LIBS) $(INCS) $(LINKS) -o $(TARGET)
|
|
|
|
$(TARGET_LIB): $(OBJS)
|
|
$(CXX) $(FLAGS) $(OBJS) $(LIBS) $(INCS) $(LINKS) -o $(TARGET_LIB)
|
|
|
|
all: $(TARGET_LIB) $(TARGET)
|
|
|
|
lib: $(TARGET_LIB)
|
|
|
|
install:
|
|
cp $(TARGET) $(PREFIX)/bin/$(TARGET)
|
|
-cp $(TARGET_LIB) $(PREFIX)/lib/$(TARGET_LIB)
|
|
cp $(TARGET_HEADER) $(PREFIX)/include/$(TARGET_HEADER)
|
|
|
|
clean:
|
|
@-rm -f $(OBJS)
|
|
@-rm -f $(TARGET)
|
|
@-rm -f $(TARGET_LIB)
|