@@ -19,6 +19,7 @@ BUILD_TARGETS = \
19
19
llama-imatrix \
20
20
llama-infill \
21
21
llama-llava-cli \
22
+ llama-minicpmv-cli\
22
23
llama-lookahead \
23
24
llama-lookup \
24
25
llama-lookup-create \
@@ -888,15 +889,16 @@ ggml/src/ggml-metal-embed.o: \
888
889
ggml/src/ggml-common.h
889
890
@echo " Embedding Metal library"
890
891
@sed -e ' /#include "ggml-common.h"/r ggml/src/ggml-common.h' -e ' /#include "ggml-common.h"/d' < ggml/src/ggml-metal.metal > ggml/src/ggml-metal-embed.metal
891
- $(eval TEMP_ASSEMBLY=$(shell mktemp) )
892
- @echo " .section __DATA, __ggml_metallib" > $(TEMP_ASSEMBLY )
893
- @echo " .globl _ggml_metallib_start" >> $(TEMP_ASSEMBLY )
894
- @echo " _ggml_metallib_start:" >> $(TEMP_ASSEMBLY )
895
- @echo " .incbin \" ggml/src/ggml-metal-embed.metal\" " >> $(TEMP_ASSEMBLY )
896
- @echo " .globl _ggml_metallib_end" >> $(TEMP_ASSEMBLY )
897
- @echo " _ggml_metallib_end:" >> $(TEMP_ASSEMBLY )
898
- @$(AS ) $(TEMP_ASSEMBLY ) -o $@
899
- @rm -f ${TEMP_ASSEMBLY}
892
+ $(eval TEMP_ASSEMBLY=$(shell mktemp -d) )
893
+ @echo " .section __DATA, __ggml_metallib" > $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
894
+ @echo " .globl _ggml_metallib_start" >> $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
895
+ @echo " _ggml_metallib_start:" >> $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
896
+ @echo " .incbin \" ggml/src/ggml-metal-embed.metal\" " >> $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
897
+ @echo " .globl _ggml_metallib_end" >> $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
898
+ @echo " _ggml_metallib_end:" >> $(TEMP_ASSEMBLY ) /ggml-metal-embed.s
899
+ $(CC ) $(CFLAGS ) -c $(TEMP_ASSEMBLY ) /ggml-metal-embed.s -o $@
900
+ @rm -f ${TEMP_ASSEMBLY} /ggml-metal-embed.s
901
+ @rmdir ${TEMP_ASSEMBLY}
900
902
endif
901
903
endif # GGML_METAL
902
904
@@ -1205,6 +1207,7 @@ clean:
1205
1207
rm -rvf ggml/* .dll
1206
1208
rm -rvf ggml/* .so
1207
1209
rm -vrf ggml/src/* .o
1210
+ rm -rvf ggml/src/llamafile/* .o
1208
1211
rm -rvf common/build-info.cpp
1209
1212
rm -vrf ggml/src/ggml-metal-embed.metal
1210
1213
rm -vrf ggml/src/ggml-cuda/* .o
@@ -1451,15 +1454,20 @@ libllava.a: examples/llava/llava.cpp \
1451
1454
$(CXX ) $(CXXFLAGS ) -static -fPIC -c $< -o $@ -Wno-cast-qual
1452
1455
1453
1456
llama-llava-cli : examples/llava/llava-cli.cpp \
1454
- examples/llava/clip.h \
1455
- examples/llava/clip.cpp \
1457
+ examples/llava/llava.cpp \
1456
1458
examples/llava/llava.h \
1459
+ examples/llava/clip.cpp \
1460
+ examples/llava/clip.h \
1461
+ $(OBJ_ALL )
1462
+ $(CXX ) $(CXXFLAGS ) $< $(filter-out % .h $< ,$^ ) -o $@ $(LDFLAGS ) -Wno-cast-qual
1463
+
1464
+ llama-minicpmv-cli : examples/llava/minicpmv-cli.cpp \
1457
1465
examples/llava/llava.cpp \
1466
+ examples/llava/llava.h \
1467
+ examples/llava/clip.cpp \
1468
+ examples/llava/clip.h \
1458
1469
$(OBJ_ALL )
1459
- $(CXX ) $(CXXFLAGS ) -c $< -o $(call GET_OBJ_FILE, $< )
1460
- $(CXX ) $(CXXFLAGS ) -c examples/llava/clip.cpp -o $(call GET_OBJ_FILE, examples/llava/clip.cpp) -Wno-cast-qual
1461
- $(CXX ) $(CXXFLAGS ) -c examples/llava/llava.cpp -o $(call GET_OBJ_FILE, examples/llava/llava.cpp)
1462
- $(CXX ) $(CXXFLAGS ) $(filter-out % .h $< examples/llava/clip.cpp examples/llava/llava.cpp,$^ ) $(call GET_OBJ_FILE, $< ) $(call GET_OBJ_FILE, examples/llava/clip.cpp) $(call GET_OBJ_FILE, examples/llava/llava.cpp) -o $@ $(LDFLAGS )
1470
+ $(CXX ) $(CXXFLAGS ) $< $(filter-out % .h $< ,$^ ) -o $@ $(LDFLAGS ) -Wno-cast-qual
1463
1471
1464
1472
ifeq ($(UNAME_S ) ,Darwin)
1465
1473
swift : examples/batched.swift
@@ -1605,42 +1613,41 @@ llama-q8dot: pocs/vdot/q8dot.cpp ggml/src/ggml.o \
1605
1613
# Mark legacy binary targets as .PHONY so that they are always checked.
1606
1614
.PHONY : main quantize perplexity embedding server
1607
1615
1616
+ # Define the object file target
1617
+ examples/deprecation-warning/deprecation-warning.o : examples/deprecation-warning/deprecation-warning.cpp
1618
+ $(CXX ) $(CXXFLAGS ) -c $< -o $@
1619
+
1608
1620
# NOTE: We currently will always build the deprecation-warning `main` and `server` binaries to help users migrate.
1609
1621
# Eventually we will want to remove these target from building all the time.
1610
- main : examples/deprecation-warning/deprecation-warning.cpp
1611
- $(CXX ) $(CXXFLAGS ) -c $< -o $(call GET_OBJ_FILE, $< )
1612
- $(CXX ) $(CXXFLAGS ) $(filter-out $< ,$^ ) $(call GET_OBJ_FILE, $< ) -o $@ $(LDFLAGS )
1622
+ main : examples/deprecation-warning/deprecation-warning.o
1623
+ $(CXX ) $(CXXFLAGS ) $< -o $@ $(LDFLAGS )
1613
1624
@echo " NOTICE: The 'main' binary is deprecated. Please use 'llama-cli' instead."
1614
1625
1615
- server : examples/deprecation-warning/deprecation-warning.cpp
1616
- $(CXX ) $(CXXFLAGS ) -c $< -o $(call GET_OBJ_FILE, $< )
1617
- $(CXX ) $(CXXFLAGS ) $(filter-out % .h $< ,$^ ) $(call GET_OBJ_FILE, $< ) -o $@ $(LDFLAGS )
1626
+ server : examples/deprecation-warning/deprecation-warning.o
1627
+ $(CXX ) $(CXXFLAGS ) $< -o $@ $(LDFLAGS )
1618
1628
@echo " NOTICE: The 'server' binary is deprecated. Please use 'llama-server' instead."
1619
1629
1620
- quantize : examples/deprecation-warning/deprecation-warning.cpp
1630
+ quantize : examples/deprecation-warning/deprecation-warning.o
1621
1631
ifneq (,$(wildcard quantize) )
1622
- $(CXX) $(CXXFLAGS) -c $< -o $(call GET_OBJ_FILE, $<)
1623
- $(CXX) $(CXXFLAGS) $(filter-out %.h $<,$^) $(call GET_OBJ_FILE, $<) -o $@ $(LDFLAGS)
1632
+ $(CXX) $(CXXFLAGS) $< -o $@ $(LDFLAGS)
1624
1633
@echo "# ########"
1625
1634
@echo "WARNING: The 'quantize' binary is deprecated. Please use 'llama-quantize' instead."
1626
1635
@echo " Remove the 'quantize' binary to remove this warning."
1627
1636
@echo "# ########"
1628
1637
endif
1629
1638
1630
- perplexity : examples/deprecation-warning/deprecation-warning.cpp
1639
+ perplexity : examples/deprecation-warning/deprecation-warning.o
1631
1640
ifneq (,$(wildcard perplexity) )
1632
- $(CXX) $(CXXFLAGS) -c $< -o $(call GET_OBJ_FILE, $<)
1633
- $(CXX) $(CXXFLAGS) $(filter-out %.h $<,$^) $(call GET_OBJ_FILE, $<) -o $@ $(LDFLAGS)
1641
+ $(CXX) $(CXXFLAGS) $< -o $@ $(LDFLAGS)
1634
1642
@echo "# ########"
1635
1643
@echo "WARNING: The 'perplexity' binary is deprecated. Please use 'llama-perplexity' instead."
1636
1644
@echo " Remove the 'perplexity' binary to remove this warning."
1637
1645
@echo "# ########"
1638
1646
endif
1639
1647
1640
- embedding : examples/deprecation-warning/deprecation-warning.cpp
1648
+ embedding : examples/deprecation-warning/deprecation-warning.o
1641
1649
ifneq (,$(wildcard embedding) )
1642
- $(CXX) $(CXXFLAGS) -c $< -o $(call GET_OBJ_FILE, $<)
1643
- $(CXX) $(CXXFLAGS) $(filter-out %.h $<,$^) $(call GET_OBJ_FILE, $<) -o $@ $(LDFLAGS)
1650
+ $(CXX) $(CXXFLAGS) $< -o $@ $(LDFLAGS)
1644
1651
@echo "# ########"
1645
1652
@echo "WARNING: The 'embedding' binary is deprecated. Please use 'llama-embedding' instead."
1646
1653
@echo " Remove the 'embedding' binary to remove this warning."
0 commit comments