CMakeLists.txt 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. llama_add_compile_flags()
  2. #
  3. # libraries
  4. #
  5. # llama
  6. add_library(llama
  7. ../include/llama.h
  8. llama.cpp
  9. llama-adapter.cpp
  10. llama-arch.cpp
  11. llama-batch.cpp
  12. llama-chat.cpp
  13. llama-context.cpp
  14. llama-cparams.cpp
  15. llama-grammar.cpp
  16. llama-graph.cpp
  17. llama-hparams.cpp
  18. llama-impl.cpp
  19. llama-io.cpp
  20. llama-kv-cache.cpp
  21. llama-kv-cache-iswa.cpp
  22. llama-memory.cpp
  23. llama-memory-hybrid.cpp
  24. llama-memory-recurrent.cpp
  25. llama-mmap.cpp
  26. llama-model-loader.cpp
  27. llama-model-saver.cpp
  28. llama-model.cpp
  29. llama-quant.cpp
  30. llama-sampling.cpp
  31. llama-vocab.cpp
  32. unicode-data.cpp
  33. unicode.cpp
  34. unicode.h
  35. models/afmoe.cpp
  36. models/apertus.cpp
  37. models/arcee.cpp
  38. models/arctic.cpp
  39. models/arwkv7.cpp
  40. models/baichuan.cpp
  41. models/bailingmoe.cpp
  42. models/bailingmoe2.cpp
  43. models/bert.cpp
  44. models/bitnet.cpp
  45. models/bloom.cpp
  46. models/chameleon.cpp
  47. models/chatglm.cpp
  48. models/codeshell.cpp
  49. models/cogvlm.cpp
  50. models/cohere2-iswa.cpp
  51. models/command-r.cpp
  52. models/dbrx.cpp
  53. models/deci.cpp
  54. models/deepseek.cpp
  55. models/deepseek2.cpp
  56. models/dots1.cpp
  57. models/dream.cpp
  58. models/ernie4-5-moe.cpp
  59. models/ernie4-5.cpp
  60. models/exaone.cpp
  61. models/exaone4.cpp
  62. models/falcon-h1.cpp
  63. models/falcon.cpp
  64. models/gemma-embedding.cpp
  65. models/gemma.cpp
  66. models/gemma2-iswa.cpp
  67. models/gemma3-iswa.cpp
  68. models/gemma3n-iswa.cpp
  69. models/glm4-moe.cpp
  70. models/glm4.cpp
  71. models/gpt2.cpp
  72. models/gptneox.cpp
  73. models/granite-hybrid.cpp
  74. models/granite.cpp
  75. models/grok.cpp
  76. models/grovemoe.cpp
  77. models/hunyuan-dense.cpp
  78. models/hunyuan-moe.cpp
  79. models/internlm2.cpp
  80. models/jais.cpp
  81. models/jamba.cpp
  82. models/lfm2.cpp
  83. models/llada-moe.cpp
  84. models/llada.cpp
  85. models/llama-iswa.cpp
  86. models/llama.cpp
  87. models/mamba.cpp
  88. models/minicpm3.cpp
  89. models/minimax-m2.cpp
  90. models/mpt.cpp
  91. models/nemotron-h.cpp
  92. models/nemotron.cpp
  93. models/neo-bert.cpp
  94. models/olmo.cpp
  95. models/olmo2.cpp
  96. models/olmoe.cpp
  97. models/openai-moe-iswa.cpp
  98. models/openelm.cpp
  99. models/orion.cpp
  100. models/pangu-embedded.cpp
  101. models/phi2.cpp
  102. models/phi3.cpp
  103. models/plamo.cpp
  104. models/plamo2.cpp
  105. models/plm.cpp
  106. models/qwen.cpp
  107. models/qwen2.cpp
  108. models/qwen2moe.cpp
  109. models/qwen2vl.cpp
  110. models/qwen3.cpp
  111. models/qwen3vl.cpp
  112. models/qwen3vl-moe.cpp
  113. models/qwen3moe.cpp
  114. models/refact.cpp
  115. models/rwkv6-base.cpp
  116. models/rwkv6.cpp
  117. models/rwkv6qwen2.cpp
  118. models/rwkv7-base.cpp
  119. models/rwkv7.cpp
  120. models/seed-oss.cpp
  121. models/smallthinker.cpp
  122. models/smollm3.cpp
  123. models/stablelm.cpp
  124. models/starcoder.cpp
  125. models/starcoder2.cpp
  126. models/t5-dec.cpp
  127. models/t5-enc.cpp
  128. models/wavtokenizer-dec.cpp
  129. models/xverse.cpp
  130. models/graph-context-mamba.cpp
  131. )
  132. set_target_properties(llama PROPERTIES
  133. VERSION ${LLAMA_INSTALL_VERSION}
  134. SOVERSION 0
  135. )
  136. target_include_directories(llama PRIVATE .)
  137. target_include_directories(llama PUBLIC ../include)
  138. target_compile_features (llama PRIVATE cxx_std_17) # don't bump
  139. target_link_libraries(llama PUBLIC ggml)
  140. if (BUILD_SHARED_LIBS)
  141. set_target_properties(llama PROPERTIES POSITION_INDEPENDENT_CODE ON)
  142. target_compile_definitions(llama PRIVATE LLAMA_BUILD)
  143. target_compile_definitions(llama PUBLIC LLAMA_SHARED)
  144. endif()