Mercurial > hgrepos > Python2 > PyMuPDF
comparison mupdf-source/Makethird @ 3:2c135c81b16c
MERGE: upstream PyMuPDF 1.26.4 with MuPDF 1.26.7
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 15 Sep 2025 11:44:09 +0200 |
| parents | b50eed0cc0ef |
| children |
comparison
equal
deleted
inserted
replaced
| 0:6015a75abc2d | 3:2c135c81b16c |
|---|---|
| 1 # GNU Makefile for third party libraries used by MuPDF | |
| 2 | |
| 3 ifeq ($(USE_SYSTEM_LIBS),yes) | |
| 4 USE_SYSTEM_FREETYPE ?= yes | |
| 5 USE_SYSTEM_GUMBO ?= yes | |
| 6 USE_SYSTEM_HARFBUZZ ?= yes | |
| 7 USE_SYSTEM_JBIG2DEC ?= yes | |
| 8 USE_SYSTEM_JPEGXR ?= no # not available | |
| 9 USE_SYSTEM_LCMS2 ?= no # lcms2mt is strongly preferred | |
| 10 USE_SYSTEM_LIBJPEG ?= yes | |
| 11 USE_SYSTEM_MUJS ?= no # not available | |
| 12 USE_SYSTEM_OPENJPEG ?= yes | |
| 13 USE_SYSTEM_ZLIB ?= yes | |
| 14 USE_SYSTEM_GLUT ?= yes | |
| 15 USE_SYSTEM_CURL ?= yes | |
| 16 USE_SYSTEM_LEPTONICA ?= yes | |
| 17 USE_SYSTEM_TESSERACT ?= yes | |
| 18 USE_SYSTEM_ZXINGCPP ?= yes | |
| 19 USE_SYSTEM_BROTLI ?= yes | |
| 20 endif | |
| 21 | |
| 22 ifeq ($(OS),MACOS) | |
| 23 USE_SYSTEM_GLUT := yes | |
| 24 endif | |
| 25 | |
| 26 ifeq ($(OS),Linux) | |
| 27 USE_SYSTEM_CURL ?= yes | |
| 28 endif | |
| 29 | |
| 30 # Use of Tesseract is optional: | |
| 31 ifeq ($(USE_TESSERACT),yes) | |
| 32 USE_LEPTONICA := yes | |
| 33 ifeq ($(USE_SYSTEM_TESSERACT),yes) | |
| 34 HAVE_TESSERACT := $(HAVE_SYS_TESSERACT) | |
| 35 else | |
| 36 ifneq ($(wildcard thirdparty/tesseract/src/*),) | |
| 37 HAVE_TESSERACT := yes | |
| 38 endif | |
| 39 endif | |
| 40 ifneq ($(HAVE_TESSERACT),yes) | |
| 41 $(error USE_TESSERACT set but tesseract not found) | |
| 42 endif | |
| 43 endif | |
| 44 | |
| 45 ifeq ($(USE_LEPTONICA),yes) | |
| 46 ifeq ($(USE_SYSTEM_LEPTONICA),yes) | |
| 47 HAVE_LEPTONICA := $(HAVE_SYS_LEPTONICA) | |
| 48 else | |
| 49 ifneq ($(wildcard thirdparty/leptonica/src/*),) | |
| 50 HAVE_LEPTONICA := yes | |
| 51 endif | |
| 52 endif | |
| 53 ifneq ($(HAVE_LEPTONICA),yes) | |
| 54 $(error USE_LEPTONICA set but leptonica not found) | |
| 55 endif | |
| 56 endif | |
| 57 | |
| 58 ifeq ($(USE_TESSERACT),yes) | |
| 59 ifneq ($(HAVE_LEPTONICA),yes) | |
| 60 $(error USE_TESSERACT requires USE_LEPTONICA) | |
| 61 endif | |
| 62 endif | |
| 63 | |
| 64 # Use of ZXing is optional: | |
| 65 ifeq ($(USE_ZXINGCPP),yes) | |
| 66 ifeq ($(USE_SYSTEM_ZXINGCPP),yes) | |
| 67 HAVE_ZXINGCPP := $(HAVE_SYS_ZXINGCPP) | |
| 68 else | |
| 69 ifneq ($(wildcard thirdparty/zxing-cpp/core/src/*),) | |
| 70 HAVE_ZXINGCPP := yes | |
| 71 endif | |
| 72 endif | |
| 73 ifneq ($(HAVE_ZXINGCPP),yes) | |
| 74 $(error USE_ZXINGCPP set but zxing not found) | |
| 75 endif | |
| 76 endif | |
| 77 | |
| 78 # Use of libarchive is optional: | |
| 79 ifeq ($(USE_LIBARCHIVE),yes) | |
| 80 HAVE_LIBARCHIVE := $(HAVE_SYS_LIBARCHIVE) | |
| 81 ifneq ($(HAVE_LIBARCHIVE),yes) | |
| 82 $(error USE_LIBARCHIVE set but libarchive not found) | |
| 83 endif | |
| 84 endif | |
| 85 | |
| 86 # --- Include source file lists --- | |
| 87 | |
| 88 include Makelists | |
| 89 | |
| 90 # --- BROTLI --- | |
| 91 | |
| 92 ifeq ($(USE_BROTLI),yes) | |
| 93 ifeq ($(USE_SYSTEM_BROTLI),yes) | |
| 94 THIRD_CFLAGS += $(SYS_BROTLI_CFLAGS) | |
| 95 THIRD_LIBS += $(SYS_BROTLI_LIBS) | |
| 96 else | |
| 97 THIRD_CFLAGS += $(BROTLI_CFLAGS) | |
| 98 THIRD_LIBS += $(BROTLI_LIBS) | |
| 99 THIRD_SRC += $(BROTLI_SRC) | |
| 100 $(OUT)/thirdparty/brotli/c/common/%.o: thirdparty/brotli/c/common/%.c | |
| 101 $(CC_CMD) $(LIB_CFLAGS) $(BROTLI_CFLAGS) $(BROTLI_BUILD_CFLAGS) | |
| 102 $(OUT)/thirdparty/brotli/c/dec/%.o: thirdparty/brotli/c/dec/%.c | |
| 103 $(CC_CMD) $(LIB_CFLAGS) $(BROTLI_CFLAGS) $(BROTLI_BUILD_CFLAGS) | |
| 104 $(OUT)/thirdparty/brotli/c/enc/%.o: thirdparty/brotli/c/enc/%.c | |
| 105 $(CC_CMD) $(LIB_CFLAGS) $(BROTLI_CFLAGS) $(BROTLI_BUILD_CFLAGS) | |
| 106 endif | |
| 107 endif | |
| 108 | |
| 109 # --- FREETYPE 2 --- | |
| 110 | |
| 111 ifeq ($(USE_SYSTEM_FREETYPE),yes) | |
| 112 THIRD_CFLAGS += $(SYS_FREETYPE_CFLAGS) | |
| 113 THIRD_LIBS += $(SYS_FREETYPE_LIBS) | |
| 114 else | |
| 115 THIRD_CFLAGS += $(FREETYPE_CFLAGS) | |
| 116 THIRD_LIBS += $(FREETYPE_LIBS) | |
| 117 THIRD_SRC += $(FREETYPE_SRC) | |
| 118 $(OUT)/thirdparty/freetype/%.o: thirdparty/freetype/%.c | |
| 119 $(CC_CMD) $(LIB_CFLAGS) $(FREETYPE_CFLAGS) $(FREETYPE_BUILD_CFLAGS) | |
| 120 endif | |
| 121 | |
| 122 # --- GUMBO (HTML5 parser) --- | |
| 123 | |
| 124 ifeq ($(USE_GUMBO),yes) | |
| 125 ifeq ($(USE_SYSTEM_GUMBO),yes) | |
| 126 THIRD_CFLAGS += $(SYS_GUMBO_CFLAGS) | |
| 127 THIRD_LIBS += $(SYS_GUMBO_LIBS) | |
| 128 else | |
| 129 THIRD_CFLAGS += $(GUMBO_CFLAGS) | |
| 130 THIRD_LIBS += $(GUMBO_LIBS) | |
| 131 THIRD_SRC += $(GUMBO_SRC) | |
| 132 $(OUT)/thirdparty/gumbo-parser/%.o: thirdparty/gumbo-parser/%.c | |
| 133 $(CC_CMD) $(LIB_CFLAGS) $(GUMBO_CFLAGS) $(GUMBO_BUILD_CFLAGS) | |
| 134 endif | |
| 135 endif | |
| 136 | |
| 137 # --- HARFBUZZ --- | |
| 138 | |
| 139 ifeq ($(USE_HARFBUZZ),yes) | |
| 140 ifeq ($(USE_SYSTEM_HARFBUZZ),yes) | |
| 141 THIRD_CFLAGS += $(SYS_HARFBUZZ_CFLAGS) | |
| 142 THIRD_LIBS += $(SYS_HARFBUZZ_LIBS) | |
| 143 else | |
| 144 THIRD_CFLAGS += $(HARFBUZZ_CFLAGS) | |
| 145 THIRD_LIBS += $(HARFBUZZ_LIBS) | |
| 146 THIRD_SRC += $(HARFBUZZ_SRC) | |
| 147 $(OUT)/thirdparty/harfbuzz/%.o: thirdparty/harfbuzz/%.cc | |
| 148 $(CXX_CMD) $(LIB_CFLAGS) $(HARFBUZZ_CFLAGS) $(HARFBUZZ_BUILD_CFLAGS) | |
| 149 endif | |
| 150 endif | |
| 151 | |
| 152 # --- JPEG-XR --- | |
| 153 | |
| 154 ifeq ($(HAVE_JPEGXR),yes) | |
| 155 THIRD_CFLAGS += -DHAVE_JPEGXR | |
| 156 ifeq ($(USE_SYSTEM_JPEGXR),yes) | |
| 157 THIRD_CFLAGS += $(SYS_JPEGXR_CFLAGS) | |
| 158 THIRD_LIBS += $(SYS_JPEGXR_LIBS) | |
| 159 else | |
| 160 THIRD_CFLAGS += $(JPEGXR_CFLAGS) | |
| 161 THIRD_LIBS += $(JPEGXR_LIBS) | |
| 162 THIRD_SRC += $(JPEGXR_SRC) | |
| 163 $(OUT)/thirdparty/jpegxr/%.o: thirdparty/jpegxr/%.c | |
| 164 $(CC_CMD) $(LIB_CFLAGS) $(JPEGXR_CFLAGS) $(JPEGXR_BUILD_CFLAGS) | |
| 165 endif | |
| 166 endif | |
| 167 | |
| 168 # --- LIBJPEG --- | |
| 169 | |
| 170 ifeq ($(USE_SYSTEM_LIBJPEG),yes) | |
| 171 THIRD_CFLAGS += $(SYS_LIBJPEG_CFLAGS) -DSHARE_JPEG | |
| 172 THIRD_LIBS += $(SYS_LIBJPEG_LIBS) | |
| 173 else | |
| 174 THIRD_CFLAGS += $(LIBJPEG_CFLAGS) | |
| 175 THIRD_LIBS += $(LIBJPEG_LIBS) | |
| 176 THIRD_SRC += $(LIBJPEG_SRC) | |
| 177 $(OUT)/thirdparty/libjpeg/%.o: thirdparty/libjpeg/%.c | |
| 178 $(CC_CMD) $(LIB_CFLAGS) $(LIBJPEG_CFLAGS) $(LIBJPEG_BUILD_CFLAGS) | |
| 179 endif | |
| 180 | |
| 181 # --- LCMS2 --- | |
| 182 | |
| 183 ifeq ($(USE_SYSTEM_LCMS2),yes) | |
| 184 THIRD_CFLAGS += $(SYS_LCMS2_CFLAGS) | |
| 185 THIRD_LIBS += $(SYS_LCMS2_LIBS) | |
| 186 else | |
| 187 THIRD_CFLAGS += $(LCMS2_CFLAGS) | |
| 188 THIRD_LIBS += $(LCMS2_LIBS) | |
| 189 THIRD_SRC += $(LCMS2_SRC) | |
| 190 $(OUT)/thirdparty/lcms2/%.o: thirdparty/lcms2/%.c | |
| 191 $(CC_CMD) $(LIB_CFLAGS) $(LCMS2_CFLAGS) $(LCMS2_BUILD_CFLAGS) | |
| 192 endif | |
| 193 | |
| 194 # --- MuJS --- | |
| 195 | |
| 196 ifeq ($(USE_MUJS),yes) | |
| 197 ifeq ($(USE_SYSTEM_MUJS),yes) | |
| 198 THIRD_CFLAGS += $(SYS_MUJS_CFLAGS) | |
| 199 THIRD_LIBS += $(SYS_MUJS_LIBS) | |
| 200 else | |
| 201 THIRD_CFLAGS += $(MUJS_CFLAGS) | |
| 202 THIRD_LIBS += $(MUJS_LIBS) | |
| 203 THIRD_SRC += $(MUJS_SRC) | |
| 204 $(OUT)/thirdparty/mujs/%.o: thirdparty/mujs/%.c | |
| 205 $(CC_CMD) $(LIB_CFLAGS) $(MUJS_CFLAGS) $(MUJS_BUILD_CFLAGS) | |
| 206 endif | |
| 207 endif | |
| 208 | |
| 209 # --- ZLIB --- | |
| 210 | |
| 211 ifeq ($(USE_SYSTEM_ZLIB),yes) | |
| 212 THIRD_CFLAGS += $(SYS_ZLIB_CFLAGS) | |
| 213 THIRD_LIBS += $(SYS_ZLIB_LIBS) | |
| 214 else | |
| 215 THIRD_CFLAGS += $(ZLIB_CFLAGS) | |
| 216 THIRD_LIBS += $(ZLIB_LIBS) | |
| 217 THIRD_SRC += $(ZLIB_SRC) | |
| 218 $(OUT)/thirdparty/zlib/%.o: thirdparty/zlib/%.c | |
| 219 $(CC_CMD) $(LIB_CFLAGS) $(ZLIB_CFLAGS) $(ZLIB_BUILD_CFLAGS) | |
| 220 endif | |
| 221 | |
| 222 # --- JBIG2DEC --- | |
| 223 | |
| 224 ifeq ($(USE_SYSTEM_JBIG2DEC),yes) | |
| 225 THIRD_CFLAGS += $(SYS_JBIG2DEC_CFLAGS) | |
| 226 THIRD_LIBS += $(SYS_JBIG2DEC_LIBS) | |
| 227 else | |
| 228 THIRD_CFLAGS += $(JBIG2DEC_CFLAGS) | |
| 229 THIRD_LIBS += $(JBIG2DEC_LIBS) | |
| 230 THIRD_SRC += $(JBIG2DEC_SRC) | |
| 231 $(OUT)/thirdparty/jbig2dec/%.o: thirdparty/jbig2dec/%.c | |
| 232 $(CC_CMD) $(WARNING_CFLAGS) $(LIB_CFLAGS) $(JBIG2DEC_CFLAGS) $(JBIG2DEC_BUILD_CFLAGS) | |
| 233 endif | |
| 234 | |
| 235 # --- OPENJPEG --- | |
| 236 | |
| 237 ifeq ($(USE_SYSTEM_OPENJPEG),yes) | |
| 238 THIRD_CFLAGS += $(SYS_OPENJPEG_CFLAGS) | |
| 239 THIRD_LIBS += $(SYS_OPENJPEG_LIBS) | |
| 240 else | |
| 241 THIRD_CFLAGS += $(OPENJPEG_CFLAGS) | |
| 242 THIRD_LIBS += $(OPENJPEG_LIBS) | |
| 243 THIRD_SRC += $(OPENJPEG_SRC) | |
| 244 $(OUT)/thirdparty/openjpeg/%.o: thirdparty/openjpeg/%.c | |
| 245 $(CC_CMD) $(LIB_CFLAGS) $(OPENJPEG_CFLAGS) $(OPENJPEG_BUILD_CFLAGS) | |
| 246 endif | |
| 247 | |
| 248 # --- FreeGLUT --- | |
| 249 | |
| 250 ifeq ($(USE_SYSTEM_GLUT),yes) | |
| 251 THIRD_GLUT_CFLAGS += $(SYS_GLUT_CFLAGS) $(SYS_GL_CFLAGS) | |
| 252 THIRD_GLUT_LIBS += $(SYS_GLUT_LIBS) $(SYS_GL_LIBS) | |
| 253 else | |
| 254 THIRD_GLUT_CFLAGS += $(GLUT_CFLAGS) $(SYS_GL_CFLAGS) | |
| 255 THIRD_GLUT_LIBS += $(GLUT_LIBS) $(SYS_GL_LIBS) | |
| 256 THIRD_GLUT_SRC += $(GLUT_SRC) | |
| 257 $(OUT)/thirdparty/freeglut/%.o: thirdparty/freeglut/%.c | |
| 258 $(CC_CMD) $(LIB_CFLAGS) $(GLUT_CFLAGS) $(GLUT_BUILD_CFLAGS) | |
| 259 endif | |
| 260 | |
| 261 # --- cURL --- | |
| 262 | |
| 263 ifeq ($(USE_SYSTEM_CURL),yes) | |
| 264 ifeq ($(HAVE_SYS_CURL),yes) | |
| 265 HAVE_CURL := yes | |
| 266 CURL_CFLAGS := $(SYS_CURL_CFLAGS) -DHAVE_CURL | |
| 267 CURL_LIBS := $(SYS_CURL_LIBS) | |
| 268 endif | |
| 269 endif | |
| 270 | |
| 271 # --- LEPTONICA --- | |
| 272 | |
| 273 ifeq ($(HAVE_LEPTONICA),yes) | |
| 274 THIRD_CFLAGS += -DHAVE_LEPTONICA | |
| 275 ifeq ($(USE_SYSTEM_LEPTONICA),yes) | |
| 276 THIRD_LIBS += $(SYS_LEPTONICA_LIBS) | |
| 277 LEPTONICA_CFLAGS += $(SYS_LEPTONICA_CFLAGS) | |
| 278 else | |
| 279 THIRD_LIBS += $(LEPTONICA_LIBS) | |
| 280 THIRD_SRC += $(LEPTONICA_SRC) | |
| 281 $(OUT)/thirdparty/leptonica/%.o: thirdparty/leptonica/%.c | |
| 282 $(CC_CMD) $(LIB_CFLAGS) $(LEPTONICA_CFLAGS) $(LEPTONICA_BUILD_CFLAGS) | |
| 283 endif | |
| 284 endif | |
| 285 | |
| 286 # --- TESSERACT --- | |
| 287 | |
| 288 ifeq ($(HAVE_TESSERACT),yes) | |
| 289 THIRD_CFLAGS += -DHAVE_TESSERACT | |
| 290 ifeq ($(USE_SYSTEM_TESSERACT),yes) | |
| 291 THIRD_LIBS += $(SYS_TESSERACT_LIBS) -lstdc++ | |
| 292 TESSERACT_CFLAGS += $(SYS_TESSERACT_CFLAGS) | |
| 293 else | |
| 294 THIRD_LIBS += $(TESSERACT_LIBS) | |
| 295 THIRD_SRC += $(TESSERACT_SRC) | |
| 296 $(OUT)/thirdparty/tesseract/%.o: thirdparty/tesseract/%.cpp | |
| 297 $(CXX_CMD) $(LIB_CFLAGS) $(TESSERACT_CFLAGS) $(TESSERACT_BUILD_CFLAGS) | |
| 298 endif | |
| 299 endif | |
| 300 | |
| 301 # --- ZXING-CPP --- | |
| 302 | |
| 303 ifeq ($(HAVE_ZXINGCPP),yes) | |
| 304 THIRD_CFLAGS += -DHAVE_ZXINGCPP | |
| 305 ifeq ($(USE_SYSTEM_ZXINGCPP),yes) | |
| 306 THIRD_CFLAGS += -DUSE_SYSTEM_ZXINGCPP $(SYS_ZXINGCPP_CFLAGS) | |
| 307 THIRD_LIBS += $(SYS_ZXINGCPP_LIBS) -lstdc++ | |
| 308 else | |
| 309 THIRD_CFLAGS += $(ZXINGCPP_CFLAGS) | |
| 310 THIRD_LIBS += $(ZXINGCPP_LIBS) | |
| 311 THIRD_SRC += $(ZXINGCPP_SRC) | |
| 312 $(OUT)/thirdparty/zxing-cpp/core/src/%.o: thirdparty/zxing-cpp/core/src/%.cpp | |
| 313 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 314 $(OUT)/thirdparty/zxing-cpp/core/src/aztec/%.o: thirdparty/zxing-cpp/core/src/aztec/%.cpp | |
| 315 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 316 $(OUT)/thirdparty/zxing-cpp/core/src/datamatrix/%.o: thirdparty/zxing-cpp/core/src/datamatrix/%.cpp | |
| 317 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 318 $(OUT)/thirdparty/zxing-cpp/core/src/libzueci/%.o: thirdparty/zxing-cpp/core/src/libzueci/%.c | |
| 319 $(CC_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) | |
| 320 $(OUT)/thirdparty/zxing-cpp/core/src/maxicode/%.o: thirdparty/zxing-cpp/core/src/maxicode/%.cpp | |
| 321 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 322 $(OUT)/thirdparty/zxing-cpp/core/src/oned/%.o: thirdparty/zxing-cpp/core/src/oned/%.cpp | |
| 323 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 324 $(OUT)/thirdparty/zxing-cpp/core/src/pdf147/%.o: thirdparty/zxing-cpp/core/src/pdf147/%.cpp | |
| 325 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 326 $(OUT)/thirdparty/zxing-cpp/core/src/qrcode/%.o: thirdparty/zxing-cpp/core/src/qrcode/%.cpp | |
| 327 $(CXX_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) $(ZXINGCPP_LANGFLAGS) | |
| 328 $(OUT)/thirdparty/zint/backend/%.o: thirdparty/zint/backend/%.c | |
| 329 $(CC_CMD) $(LIB_CFLAGS) $(ZXINGCPP_CFLAGS) $(ZXINGCPP_BUILD_CFLAGS) | |
| 330 endif | |
| 331 endif | |
| 332 | |
| 333 # --- EXTRACT --- | |
| 334 | |
| 335 ifeq ($(USE_EXTRACT),yes) | |
| 336 | |
| 337 THIRD_CFLAGS += $(EXTRACT_CFLAGS) | |
| 338 THIRD_LIBS += $(EXTRACT_LIBS) | |
| 339 THIRD_SRC += $(EXTRACT_SRC) | |
| 340 $(OUT)/thirdparty/extract/%.o: thirdparty/extract/%.c | |
| 341 $(CC_CMD) $(WARNING_CFLAGS) $(LIB_CFLAGS) $(EXTRACT_CFLAGS) $(ZLIB_CFLAGS) $(EXTRACT_BUILD_CFLAGS) | |
| 342 | |
| 343 # The first python3 command in the next two rules returns 0 (success) iff | |
| 344 # python3 exists and is version 3.6 or later. | |
| 345 | |
| 346 thirdparty/extract/src/docx_template.c: thirdparty/extract/src/template.docx thirdparty/extract/src/docx_template_build.py | |
| 347 $(QUIET_GEN) if python3 -c 'import sys; sys.exit(sys.version_info < (3,6))'; \ | |
| 348 then python3 thirdparty/extract/src/docx_template_build.py \ | |
| 349 -i thirdparty/extract/src/template.docx \ | |
| 350 -n docx \ | |
| 351 -o thirdparty/extract/src/docx_template ; \ | |
| 352 else echo python3 is older than 3.6 so not running docx_template_build.py; \ | |
| 353 fi | |
| 354 @touch $@ | |
| 355 | |
| 356 thirdparty/extract/src/odt_template.c: thirdparty/extract/src/template.odt thirdparty/extract/src/docx_template_build.py | |
| 357 $(QUIET_GEN) if python3 -c 'import sys; sys.exit(sys.version_info < (3,6))'; \ | |
| 358 then python3 thirdparty/extract/src/docx_template_build.py \ | |
| 359 -i thirdparty/extract/src/template.odt \ | |
| 360 -n odt \ | |
| 361 -o thirdparty/extract/src/odt_template ; \ | |
| 362 else echo python3 is older than 3.6 so not running docx_template_build.py; \ | |
| 363 fi | |
| 364 @touch $@ | |
| 365 | |
| 366 generate: thirdparty/extract/src/docx_template.c | |
| 367 | |
| 368 endif | |
| 369 | |
| 370 # --- LIBARCHIVE --- | |
| 371 | |
| 372 ifeq ($(HAVE_LIBARCHIVE),yes) | |
| 373 THIRD_CFLAGS += -DHAVE_LIBARCHIVE | |
| 374 THIRD_CFLAGS += $(SYS_LIBARCHIVE_CFLAGS) | |
| 375 THIRD_LIBS += $(SYS_LIBARCHIVE_LIBS) -lstdc++ | |
| 376 endif | |
| 377 | |
| 378 # --- HAVE_SMARTOFFICE --- | |
| 379 | |
| 380 ifeq ($(HAVE_SMARTOFFICE),yes) | |
| 381 THIRD_CFLAGS += -DHAVE_SMARTOFFICE -Ithirdparty/so/include | |
| 382 SODOCHANDLER_LIB = $(OUT)/libsodochandler.a | |
| 383 COMMERCIAL_LIBS = $(SODOCHANDLER_LIB) | |
| 384 SOLIB_PATH ?= thirdparty/so/lib/linux/x64/ | |
| 385 THIRD_LIBS += -L$(OUT) -L$(SOLIB_PATH) -lsodochandler -l:smart-office-lib.a | |
| 386 endif | |
| 387 | |
| 388 SODOCHANDLER_SRC := $(sort $(wildcard thirdparty/so/source/*.c)) | |
| 389 SODOCHANDLER_OBJ := $(SODOCHANDLER_SRC:%.c=$(OUT)/%.o) | |
| 390 $(SODOCHANDLER_LIB) : $(SODOCHANDLER_OBJ) |
