From f4d01e231ac609889b18d9073bc314455b875c79 Mon Sep 17 00:00:00 2001 From: Tor Andersson Date: Mon, 9 Apr 2018 12:32:13 +0200 Subject: Clean up and simplify makefiles. * Use autogenerated header file dependencies. * Use mkdir to create target output directory directly. --- Makethird | 1013 ++++++++++++++++++++----------------------------------------- 1 file changed, 327 insertions(+), 686 deletions(-) (limited to 'Makethird') diff --git a/Makethird b/Makethird index 0ba7c85a..5b310919 100644 --- a/Makethird +++ b/Makethird @@ -1,758 +1,399 @@ # GNU Makefile for third party libraries used by MuPDF -# -# If thirdparty libraries are supplied, they will be built as -# static libraries. -# -# Use 'git submodule init' and 'git submodule update' to check -# out the thirdparty libraries from git. - -FREETYPE_DIR := thirdparty/freetype -HARFBUZZ_DIR := thirdparty/harfbuzz -JBIG2DEC_DIR := thirdparty/jbig2dec -JPEGXR_DIR := thirdparty/jpegxr -LCMS2_DIR := thirdparty/lcms2 -LIBJPEG_DIR := thirdparty/libjpeg -LURATECH_DIR := thirdparty/luratech -MUJS_DIR := thirdparty/mujs -OPENJPEG_DIR := thirdparty/openjpeg/src/lib/openjp2 -ZLIB_DIR := thirdparty/zlib - -CURL_DIR := thirdparty/curl -GLUT_DIR := thirdparty/freeglut -# --- MuJS --- +ifeq ($(USE_SYSTEM_LIBS),yes) + USE_SYSTEM_FREETYPE := yes + USE_SYSTEM_HARFBUZZ := yes + USE_SYSTEM_JBIG2DEC := yes + USE_SYSTEM_JPEGXR := no # not available + USE_SYSTEM_LCMS2 := no # need lcms2-art fork + USE_SYSTEM_LIBJPEG := yes + USE_SYSTEM_MUJS := no # not available + USE_SYSTEM_OPENJPEG := yes + USE_SYSTEM_ZLIB := yes + USE_SYSTEM_GLUT := yes + USE_SYSTEM_CURL := yes +endif -ifneq "$(wildcard $(MUJS_DIR)/README)" "" +ifeq ($(OS),MACOS) + USE_SYSTEM_GLUT := yes +endif -MUJS_OUT := $(OUT)/thirdparty/mujs -MUJS_SRC := one.c +# --- FREETYPE 2 --- -MUJS_OBJ := $(addprefix $(MUJS_OUT)/, $(MUJS_SRC:%.c=%.o)) +ifeq ($(USE_SYSTEM_FREETYPE),yes) + FREETYPE_CFLAGS += $(SYS_FREETYPE_CFLAGS) + THIRD_CFLAGS += $(FREETYPE_CFLAGS) + THIRD_LIBS += $(SYS_FREETYPE_LIBS) +else -$(MUJS_OUT)/one.o: $(wildcard $(MUJS_DIR)/js*.c $(MUJS_DIR)/utf*.c $(MUJS_DIR)/regex.c $(MUJS_DIR)/*.h) +FREETYPE_CFLAGS += -Iscripts/freetype -Ithirdparty/freetype/include + +THIRD_SRC += thirdparty/freetype/src/base/ftbase.c +THIRD_SRC += thirdparty/freetype/src/base/ftbbox.c +THIRD_SRC += thirdparty/freetype/src/base/ftbitmap.c +THIRD_SRC += thirdparty/freetype/src/base/ftdebug.c +THIRD_SRC += thirdparty/freetype/src/base/ftfntfmt.c +THIRD_SRC += thirdparty/freetype/src/base/ftgasp.c +THIRD_SRC += thirdparty/freetype/src/base/ftglyph.c +THIRD_SRC += thirdparty/freetype/src/base/ftinit.c +THIRD_SRC += thirdparty/freetype/src/base/ftlcdfil.c +THIRD_SRC += thirdparty/freetype/src/base/ftstroke.c +THIRD_SRC += thirdparty/freetype/src/base/ftsynth.c +THIRD_SRC += thirdparty/freetype/src/base/ftsystem.c +THIRD_SRC += thirdparty/freetype/src/base/fttype1.c +THIRD_SRC += thirdparty/freetype/src/cff/cff.c +THIRD_SRC += thirdparty/freetype/src/cid/type1cid.c +THIRD_SRC += thirdparty/freetype/src/psaux/psaux.c +THIRD_SRC += thirdparty/freetype/src/pshinter/pshinter.c +THIRD_SRC += thirdparty/freetype/src/psnames/psnames.c +THIRD_SRC += thirdparty/freetype/src/raster/raster.c +THIRD_SRC += thirdparty/freetype/src/sfnt/sfnt.c +THIRD_SRC += thirdparty/freetype/src/smooth/smooth.c +THIRD_SRC += thirdparty/freetype/src/truetype/truetype.c +THIRD_SRC += thirdparty/freetype/src/type1/type1.c + +THIRD_CFLAGS += $(FREETYPE_CFLAGS) + +$(OUT)/thirdparty/freetype/%.o: thirdparty/freetype/%.c + $(CC_CMD) $(FREETYPE_CFLAGS) \ + -DFT_CONFIG_MODULES_H=\"slimftmodules.h\" \ + -DFT_CONFIG_OPTIONS_H=\"slimftoptions.h\" \ + -DFT2_BUILD_LIBRARY -$(MUJS_OUT): - $(MKDIR_CMD) -$(MUJS_OUT)/%.o: $(MUJS_DIR)/%.c | $(MUJS_OUT) - $(CC_CMD) +endif -MUJS_CFLAGS := -I$(MUJS_DIR) +# --- HARFBUZZ --- +ifeq ($(USE_SYSTEM_HARFBUZZ),yes) + THIRD_CFLAGS += $(SYS_HARFBUZZ_CFLAGS) + THIRD_LIBS += $(SYS_HARFBUZZ_LIBS) else -MUJS_CFLAGS := -DFZ_ENABLE_JS=0 +THIRD_SRC += thirdparty/harfbuzz/src/hb-blob.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-buffer.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-buffer-serialize.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-common.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-face.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-fallback-shape.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-font.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ft.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-font.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-layout.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-map.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-default.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-hangul.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-hebrew.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-indic-table.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-indic.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-thai.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-tibetan.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-use-table.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-complex-use.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-fallback.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape-normalize.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-shape.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ot-tag.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-set.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-shape-plan.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-shape.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-shaper.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-ucdn.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-unicode.cc +THIRD_SRC += thirdparty/harfbuzz/src/hb-warning.cc + +THIRD_CFLAGS += -Ithirdparty/harfbuzz/src + +$(OUT)/thirdparty/harfbuzz/%.o: thirdparty/harfbuzz/%.cc + $(CXX_CMD) $(FREETYPE_CFLAGS) \ + -DHAVE_OT -DHAVE_UCDN -DHB_NO_MT \ + -Dhb_malloc_impl=fz_hb_malloc \ + -Dhb_calloc_impl=fz_hb_calloc \ + -Dhb_free_impl=fz_hb_free \ + -Dhb_realloc_impl=fz_hb_realloc \ + -fno-rtti -fno-exceptions -fvisibility-inlines-hidden endif -# --- FreeType 2 --- - -ifneq "$(wildcard $(FREETYPE_DIR)/README)" "" - -FREETYPE_OUT := $(OUT)/thirdparty/freetype -FREETYPE_SRC := \ - ftbase.c \ - ftbbox.c \ - ftbitmap.c \ - ftdebug.c \ - ftfntfmt.c \ - ftgasp.c \ - ftglyph.c \ - ftinit.c \ - ftstroke.c \ - ftsynth.c \ - ftsystem.c \ - fttype1.c \ - cff.c \ - psaux.c \ - pshinter.c \ - psnames.c \ - raster.c \ - sfnt.c \ - smooth.c \ - truetype.c \ - type1.c \ - type1cid.c \ - -FREETYPE_OBJ := $(addprefix $(FREETYPE_OUT)/, $(FREETYPE_SRC:%.c=%.o)) - -$(FREETYPE_OUT): - $(MKDIR_CMD) - -FT_CFLAGS := -Wno-unused-function \ - -DFT2_BUILD_LIBRARY -DDARWIN_NO_CARBON \ - '-DFT_CONFIG_MODULES_H="slimftmodules.h"' \ - '-DFT_CONFIG_OPTIONS_H="slimftoptions.h"' - -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/base/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/cff/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/cid/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/psaux/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/pshinter/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/psnames/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/raster/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/smooth/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/sfnt/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/truetype/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) -$(FREETYPE_OUT)/%.o: $(FREETYPE_DIR)/src/type1/%.c | $(FREETYPE_OUT) - $(CC_CMD) $(FT_CFLAGS) - -FREETYPE_CFLAGS := -Iscripts/freetype -I$(FREETYPE_DIR)/include +# --- JPEG-XR --- + +ifeq ($(HAVE_JPEGXR),yes) +ifeq ($(USE_SYSTEM_JPEGXR),yes) + THIRD_CFLAGS += $(SYS_JPEGXR_CFLAGS) -DHAVE_JPEGXR + THIRD_LIBS += $(SYS_JPEGXR_LIBS) else -FREETYPE_CFLAGS := $(SYS_FREETYPE_CFLAGS) -FREETYPE_LIBS := $(SYS_FREETYPE_LIBS) + +THIRD_SRC += thirdparty/jpegxr/Software/algo.c +THIRD_SRC += thirdparty/jpegxr/Software/api.c +THIRD_SRC += thirdparty/jpegxr/Software/cr_parse.c +THIRD_SRC += thirdparty/jpegxr/Software/flags.c +THIRD_SRC += thirdparty/jpegxr/Software/init.c +THIRD_SRC += thirdparty/jpegxr/Software/io.c +THIRD_SRC += thirdparty/jpegxr/Software/jpegxr_pixelformat.c +THIRD_SRC += thirdparty/jpegxr/Software/r_parse.c +THIRD_SRC += thirdparty/jpegxr/Software/r_strip.c +THIRD_SRC += thirdparty/jpegxr/Software/r_tile_frequency.c +THIRD_SRC += thirdparty/jpegxr/Software/r_tile_spatial.c +THIRD_SRC += thirdparty/jpegxr/Software/x_strip.c + +THIRD_CFLAGS += -Ithirdparty/jpegxr +THIRD_CFLAGS += -Ithirdparty/jpegxr/Software +THIRD_CFLAGS += -DHAVE_JPEGXR + +$(OUT)/thirdparty/jpegxr/%.o: thirdparty/jpegxr/%.c + $(CC_CMD) -Ithirdparty/jpegxr -Ithirdparty/jpegxr/Software -Wno-tautological-compare + +endif endif -# --- HarfBuzz --- - -ifneq "$(wildcard $(HARFBUZZ_DIR)/README)" "" - -HARFBUZZ_OUT := $(OUT)/thirdparty/harfbuzz -HARFBUZZ_SRC := \ - hb-blob.cc \ - hb-buffer.cc \ - hb-buffer-serialize.cc \ - hb-common.cc \ - hb-face.cc \ - hb-fallback-shape.cc \ - hb-font.cc \ - hb-ft.cc \ - hb-ot-font.cc \ - hb-ot-layout.cc \ - hb-ot-map.cc \ - hb-ot-shape-complex-arabic.cc \ - hb-ot-shape-complex-default.cc \ - hb-ot-shape-complex-hangul.cc \ - hb-ot-shape-complex-hebrew.cc \ - hb-ot-shape-complex-indic-table.cc \ - hb-ot-shape-complex-indic.cc \ - hb-ot-shape-complex-myanmar.cc \ - hb-ot-shape-complex-thai.cc \ - hb-ot-shape-complex-tibetan.cc \ - hb-ot-shape-complex-use-table.cc \ - hb-ot-shape-complex-use.cc \ - hb-ot-shape-fallback.cc \ - hb-ot-shape-normalize.cc \ - hb-ot-shape.cc \ - hb-ot-tag.cc \ - hb-set.cc \ - hb-shape-plan.cc \ - hb-shape.cc \ - hb-shaper.cc \ - hb-ucdn.cc \ - hb-unicode.cc \ - hb-warning.cc - -# hb-coretext.cc -# hb-directwrite.cc -# hb-glib.cc -# hb-gobject-structs.cc -# hb-graphite2.cc -# hb-icu.cc -# hb-uniscribe.cc - -HARFBUZZ_OBJ := $(addprefix $(HARFBUZZ_OUT)/, $(HARFBUZZ_SRC:%.cc=%.o)) - -$(HARFBUZZ_OUT): - $(MKDIR_CMD) -$(HARFBUZZ_OUT)/%.o: $(HARFBUZZ_DIR)/src/%.cc | $(HARFBUZZ_OUT) - $(CXX_CMD) -DHAVE_OT -DHAVE_UCDN -DHB_NO_MT $(FREETYPE_CFLAGS) \ - -Dhb_malloc_impl=fz_hb_malloc -Dhb_calloc_impl=fz_hb_calloc \ - -Dhb_free_impl=fz_hb_free -Dhb_realloc_impl=fz_hb_realloc \ - -fno-rtti -fno-exceptions -fvisibility-inlines-hidden --std=gnu++0x - -HARFBUZZ_CFLAGS := -I$(HARFBUZZ_DIR)/src +# --- LIBJPEG --- + +ifeq ($(USE_SYSTEM_LIBJPEG),yes) + THIRD_CFLAGS += $(SYS_LIBJPEG_CFLAGS) -DSHARE_JPEG + THIRD_LIBS += $(SYS_LIBJPEG_LIBS) else -HARFBUZZ_CFLAGS := $(SYS_HARFBUZZ_CFLAGS) -HARFBUZZ_LIBS := $(SYS_HARFBUZZ_LIBS) + +THIRD_SRC += thirdparty/libjpeg/jaricom.c +THIRD_SRC += thirdparty/libjpeg/jcomapi.c +THIRD_SRC += thirdparty/libjpeg/jdapimin.c +THIRD_SRC += thirdparty/libjpeg/jdapistd.c +THIRD_SRC += thirdparty/libjpeg/jdarith.c +THIRD_SRC += thirdparty/libjpeg/jdatadst.c +THIRD_SRC += thirdparty/libjpeg/jdatasrc.c +THIRD_SRC += thirdparty/libjpeg/jdcoefct.c +THIRD_SRC += thirdparty/libjpeg/jdcolor.c +THIRD_SRC += thirdparty/libjpeg/jddctmgr.c +THIRD_SRC += thirdparty/libjpeg/jdhuff.c +THIRD_SRC += thirdparty/libjpeg/jdinput.c +THIRD_SRC += thirdparty/libjpeg/jdmainct.c +THIRD_SRC += thirdparty/libjpeg/jdmarker.c +THIRD_SRC += thirdparty/libjpeg/jdmaster.c +THIRD_SRC += thirdparty/libjpeg/jdmerge.c +THIRD_SRC += thirdparty/libjpeg/jdpostct.c +THIRD_SRC += thirdparty/libjpeg/jdsample.c +THIRD_SRC += thirdparty/libjpeg/jdtrans.c +THIRD_SRC += thirdparty/libjpeg/jerror.c +THIRD_SRC += thirdparty/libjpeg/jfdctflt.c +THIRD_SRC += thirdparty/libjpeg/jfdctfst.c +THIRD_SRC += thirdparty/libjpeg/jfdctint.c +THIRD_SRC += thirdparty/libjpeg/jidctflt.c +THIRD_SRC += thirdparty/libjpeg/jidctfst.c +THIRD_SRC += thirdparty/libjpeg/jidctint.c +THIRD_SRC += thirdparty/libjpeg/jmemmgr.c +THIRD_SRC += thirdparty/libjpeg/jquant1.c +THIRD_SRC += thirdparty/libjpeg/jquant2.c +THIRD_SRC += thirdparty/libjpeg/jutils.c + +THIRD_CFLAGS += -Iscripts/libjpeg -Ithirdparty/libjpeg + +$(OUT)/thirdparty/libjpeg/%.o: thirdparty/libjpeg/%.c + $(CC_CMD) -Iscripts/libjpeg + endif -# --- LURATECH --- +# --- LCMS2 --- -ifneq "$(wildcard $(LURATECH_DIR)/ldf_jb2)$(wildcard $(LURATECH_DIR)/lwf_jp2)" "" - -LURATECH_OUT := $(OUT)/thirdparty/luratech -LURATECH_SRC := \ - jb2_adt_cache.c \ - jb2_adt_decoder_halftone_region.c \ - jb2_adt_encoder_text_region.c \ - jb2_adt_huffman_tree.c \ - jb2_adt_symbol_instance.c \ - jb2_adt_context_ref_encoder.c \ - jb2_adt_context_ref_buffer.c \ - jb2_adt_context_ref_encoder.c \ - jb2_adt_mq_encoder.c \ - jb2_adt_decoder_text_region.c \ - jb2_adt_huffman_table_user_defined.c \ - jb2_adt_mmr_tables.c \ - jb2_adt_huffman_table_symbol.c \ - jb2_adt_component.c \ - jb2_adt_context_buffer.c \ - jb2_adt_context_decoder.c \ - jb2_adt_context_encoder.c \ - jb2_adt_context_ref_decoder.c \ - jb2_adt_decoder_collective_bitmap.c \ - jb2_adt_decoder_generic_region.c \ - jb2_adt_decoder_pattern_dict.c \ - jb2_adt_decoder_symbol_dict.c \ - jb2_adt_encoder_symbol_dict.c \ - jb2_adt_external_cache.c \ - jb2_adt_file.c \ - jb2_adt_file_extras.c \ - jb2_adt_handle_document.c \ - jb2_adt_huffman_decoder.c \ - jb2_adt_huffman_encoder.c \ - jb2_adt_huffman_table.c \ - jb2_adt_huffman_table_standard.c \ - jb2_adt_location.c \ - jb2_adt_memory.c \ - jb2_adt_message.c \ - jb2_adt_mmr_decoder.c \ - jb2_adt_mq_decoder.c \ - jb2_adt_mq_encoder.c \ - jb2_adt_mq_state.c \ - jb2_adt_pattern_dict.c \ - jb2_adt_pdf_file.c \ - jb2_adt_pdf_stream.c \ - jb2_adt_props_decompress.c \ - jb2_adt_read_bit_buffer.c \ - jb2_adt_read_data.c \ - jb2_adt_render_common.c \ - jb2_adt_render_generic_region.c \ - jb2_adt_render_halftone_region.c \ - jb2_adt_render_text_region.c \ - jb2_adt_run_array.c \ - jb2_adt_segment_array.c \ - jb2_adt_segment.c \ - jb2_adt_segment_end_of_stripe.c \ - jb2_adt_segment_generic_region.c \ - jb2_adt_segment_halftone_region.c \ - jb2_adt_segment_page_info.c \ - jb2_adt_segment_pattern_dict.c \ - jb2_adt_segment_region.c \ - jb2_adt_segment_symbol_dict.c \ - jb2_adt_segment_table.c \ - jb2_adt_segment_text_region.c \ - jb2_adt_segment_types.c \ - jb2_adt_stack.c \ - jb2_adt_symbol.c \ - jb2_adt_symbol_dict.c \ - jb2_adt_symbol_unify.c \ - jb2_adt_write_bits.c \ - jb2_adt_write_data.c \ - jb2_adt_write_pdf.c \ - jb2_common.c \ - jb2_license_dummy.c \ - jp2_adt_band_array.c \ - jp2_adt_band_buffer.c \ - jp2_adt_block_array.c \ - jp2_adt_cache.c \ - jp2_adt_comp.c \ - jp2_adt_component_array.c \ - jp2_adt_decomp.c \ - jp2_adt_ebcot_decoder.c \ - jp2_adt_external_cache.c \ - jp2_adt_image.c \ - jp2_adt_memory.c \ - jp2_adt_mq_decoder.c \ - jp2_adt_mq_state.c \ - jp2_adt_packet_decoder.c \ - jp2_adt_precinct_array.c \ - jp2_adt_rate.c \ - jp2_adt_rate_list.c \ - jp2_adt_read_bits.c \ - jp2_adt_read_data.c \ - jp2_adt_reader_requirements.c \ - jp2_adt_resolution_array.c \ - jp2_adt_tile_array.c \ - jp2_adt_tlm_marker_array.c \ - jp2_adt_write_data.c \ - jp2_buffer.c \ - jp2c_code_cb.c \ - jp2c_coder.c \ - jp2c_codestream.c \ - jp2c_file_format.c \ - jp2c_format.c \ - jp2c_memory.c \ - jp2_code_cb.c \ - jp2_common.c \ - jp2c_progression.c \ - jp2c_quant.c \ - jp2c_wavelet.c \ - jp2c_wavelet_lifting.c \ - jp2c_weights.c \ - jp2c_write.c \ - jp2d_codestream.c \ - jp2d_decoder.c \ - jp2d_file_format.c \ - jp2d_format.c \ - jp2d_image.c \ - jp2d_memory.c \ - jp2d_partial_decoding.c \ - jp2d_progression.c \ - jp2d_quant.c \ - jp2d_scale.c \ - jp2d_wavelet.c \ - jp2d_wavelet_lifting.c \ - jp2d_write.c \ - jp2_icc.c \ - jp2_license.c \ - jp2_packet.c \ - jp2_tag_tree.c - -LURATECH_OBJ := $(addprefix $(LURATECH_OUT)/, $(LURATECH_SRC:%.c=%.o)) - -$(LURATECH_OUT): - $(MKDIR_CMD) -$(LURATECH_OUT)/%.o: $(LURATECH_DIR)/ldf_jb2/source/common/%.c | $(LURATECH_OUT) - $(CC_CMD) \ - -I$(LURATECH_DIR)/ldf_jb2/source/common \ - -DLINUX -$(LURATECH_OUT)/%.o: $(LURATECH_DIR)/ldf_jb2/source/compress/%.c | $(LURATECH_OUT) - $(CC_CMD) \ - -I$(LURATECH_DIR)/ldf_jb2/source/common \ - -DLINUX -$(LURATECH_OUT)/%.o: $(LURATECH_DIR)/lwf_jp2/library/source/%.c | $(LURATECH_OUT) - $(CC_CMD) \ - -I$(LURATECH_DIR)/ldf_jb2/source/common \ - -DLINUX - -LURATECH_CFLAGS := \ --I$(LURATECH_DIR)/ldf_jb2/source/common \ - -I$(LURATECH_DIR)/ldf_jb2/source/libraries \ - -I$(LURATECH_DIR)/ldf_jb2/source/compress \ - -I$(LURATECH_DIR)/lwf_jp2/library/source \ - -DHAVE_LURATECH - -else # --- LURATECH --- +ifeq ($(USE_SYSTEM_LCMS2),yes) + THIRD_CFLAGS += $(SYS_LCMS2_CFLAGS) + THIRD_LIBS += $(SYS_LCMS2_CFLAGS) +else -# --- JBIG2DEC --- +THIRD_SRC += $(sort $(wildcard thirdparty/lcms2/src/cms*.c)) -ifneq "$(wildcard $(JBIG2DEC_DIR)/README)" "" - -JBIG2DEC_OUT := $(OUT)/thirdparty/jbig2dec -JBIG2DEC_SRC := \ - jbig2.c \ - jbig2_arith.c \ - jbig2_arith_iaid.c \ - jbig2_arith_int.c \ - jbig2_generic.c \ - jbig2_halftone.c \ - jbig2_huffman.c \ - jbig2_image.c \ - jbig2_metadata.c \ - jbig2_mmr.c \ - jbig2_page.c \ - jbig2_refinement.c \ - jbig2_segment.c \ - jbig2_symbol_dict.c \ - jbig2_text.c - -JBIG2DEC_OBJ := $(addprefix $(JBIG2DEC_OUT)/, $(JBIG2DEC_SRC:%.c=%.o)) - -$(JBIG2DEC_OUT): - $(MKDIR_CMD) -$(JBIG2DEC_OUT)/%.o: $(JBIG2DEC_DIR)/%.c | $(JBIG2DEC_OUT) - $(CC_CMD) -DHAVE_STDINT_H -DJBIG_EXTERNAL_MEMENTO_H=\"mupdf/memento.h\" +THIRD_CFLAGS += -Ithirdparty/lcms2/include + +$(OUT)/thirdparty/lcms2/%.o: thirdparty/lcms2/%.c + $(CC_CMD) -Ithirdparty/lcms2/include -JBIG2DEC_CFLAGS := -I$(JBIG2DEC_DIR) -else -JBIG2DEC_CFLAGS := $(SYS_JBIG2DEC_CFLAGS) -JBIG2DEC_LIBS := $(SYS_JBIG2DEC_LIBS) endif -# --- OpenJPEG --- - -ifneq "$(wildcard $(OPENJPEG_DIR)/openjpeg.h)" "" - -OPENJPEG_OUT := $(OUT)/thirdparty/openjpeg -OPENJPEG_SRC := \ - bio.c \ - cio.c \ - dwt.c \ - event.c \ - function_list.c \ - image.c \ - invert.c \ - j2k.c \ - jp2.c \ - mct.c \ - mqc.c \ - openjpeg.c \ - pi.c \ - raw.c \ - t1.c \ - t2.c \ - tcd.c \ - tgt.c \ - thread.c - -OPENJPEG_OBJ := $(addprefix $(OPENJPEG_OUT)/, $(OPENJPEG_SRC:%.c=%.o)) - -$(OPENJPEG_OUT): - $(MKDIR_CMD) -$(OPENJPEG_OUT)/%.o: $(OPENJPEG_DIR)/%.c | $(OPENJPEG_OUT) - $(CC_CMD) $(OPENJPEG_CFLAGS) +# --- MuJS --- -OPENJPEG_CFLAGS += -I$(OPENJPEG_DIR) -DOPJ_STATIC -DOPJ_HAVE_STDINT_H -DOPJ_HAVE_INTTYPES_H +ifeq ($(USE_SYSTEM_MUJS),yes) + THIRD_CFLAGS += $(SYS_MUJS_CFLAGS) + THIRD_LIBS += $(SYS_MUJS_LIBS) else -OPENJPEG_CFLAGS := $(SYS_OPENJPEG_CFLAGS) -OPENJPEG_LIBS := $(SYS_OPENJPEG_LIBS) + +THIRD_SRC += thirdparty/mujs/one.c +THIRD_CFLAGS += -Ithirdparty/mujs + +$(OUT)/thirdparty/mujs/%.o: thirdparty/mujs/%.c + $(CC_CMD) + endif -endif # --- LURATECH --- - -# --- JPEG library from IJG --- - -ifneq "$(wildcard $(LIBJPEG_DIR)/README)" "" - -LIBJPEG_OUT := $(OUT)/thirdparty/libjpeg -LIBJPEG_SRC := \ - jaricom.c \ - jcomapi.c \ - jdapimin.c \ - jdapistd.c \ - jdarith.c \ - jdatadst.c \ - jdatasrc.c \ - jdcoefct.c \ - jdcolor.c \ - jddctmgr.c \ - jdhuff.c \ - jdinput.c \ - jdmainct.c \ - jdmarker.c \ - jdmaster.c \ - jdmerge.c \ - jdpostct.c \ - jdsample.c \ - jdtrans.c \ - jerror.c \ - jfdctflt.c \ - jfdctfst.c \ - jfdctint.c \ - jidctflt.c \ - jidctfst.c \ - jidctint.c \ - jmemmgr.c \ - jquant1.c \ - jquant2.c \ - jutils.c \ - -LIBJPEG_OBJ := $(addprefix $(LIBJPEG_OUT)/, $(LIBJPEG_SRC:%.c=%.o)) - -$(LIBJPEG_OUT): - $(MKDIR_CMD) -$(LIBJPEG_OUT)/%.o: $(LIBJPEG_DIR)/%.c | $(LIBJPEG_OUT) - $(CC_CMD) -Dmain=xxxmain - -LIBJPEG_CFLAGS := -Iscripts/libjpeg -I$(LIBJPEG_DIR) +# --- ZLIB --- + +ifeq ($(USE_SYSTEM_ZLIB),yes) + THIRD_CFLAGS += $(SYS_ZLIB_CFLAGS) + THIRD_LIBS += $(SYS_ZLIB_LIBS) else -LIBJPEG_CFLAGS := $(SYS_LIBJPEG_CFLAGS) -DSHARE_JPEG -LIBJPEG_LIBS := $(SYS_LIBJPEG_LIBS) -endif -# --- jpegxr --- +THIRD_SRC += thirdparty/zlib/adler32.c +THIRD_SRC += thirdparty/zlib/compress.c +THIRD_SRC += thirdparty/zlib/crc32.c +THIRD_SRC += thirdparty/zlib/deflate.c +THIRD_SRC += thirdparty/zlib/inffast.c +THIRD_SRC += thirdparty/zlib/inflate.c +THIRD_SRC += thirdparty/zlib/inftrees.c +THIRD_SRC += thirdparty/zlib/trees.c +THIRD_SRC += thirdparty/zlib/uncompr.c +THIRD_SRC += thirdparty/zlib/zutil.c + +THIRD_CFLAGS += -Ithirdparty/zlib -ifneq "$(wildcard $(JPEGXR_DIR)/T835E.pdf)" "" +$(OUT)/thirdparty/zlib/%.o: thirdparty/zlib/%.c + $(CC_CMD) -DHAVE_UNISTD_H -DHAVE_STDARG_H -JPEGXR_OUT := $(OUT)/thirdparty/jpegxr -JPEGXR_SRC := \ - algo.c \ - api.c \ - flags.c \ - init.c \ - io.c \ - cr_parse.c \ - jpegxr_pixelformat.c \ - r_parse.c \ - r_strip.c \ - r_tile_spatial.c \ - r_tile_frequency.c \ - x_strip.c +endif -JPEGXR_OBJ := $(addprefix $(JPEGXR_OUT)/, $(JPEGXR_SRC:%.c=%.o)) +# --- LURATECH --- -$(JPEGXR_OUT): - $(MKDIR_CMD) +ifeq ($(HAVE_LURATECH),yes) -$(JPEGXR_OUT)/%.o: $(JPEGXR_DIR)/Software/%.c | $(JPEGXR_OUT) - $(CC_CMD) $(JPEGXR_CFLAGS) +THIRD_SRC += $(sort $(wildcard thirdparty/luratech/ldf_jb2/source/common/*.c)) +THIRD_SRC += $(sort $(wildcard thirdparty/luratech/ldf_jb2/source/compress/*.c)) +THIRD_SRC += $(sort $(wildcard thirdparty/luratech/lwf_jp2/library/source/*.c)) -JPEGXR_CFLAGS := \ - -I$(JPEGXR_DIR) \ - -I$(JPEGXR_DIR)/Software \ - -DHAVE_JPEGXR +LURATECH_CFLAGS += -Ithirdparty/luratech/ldf_jb2/source/libraries +LURATECH_CFLAGS += -Ithirdparty/luratech/ldf_jb2/source/compress +LURATECH_CFLAGS += -Ithirdparty/luratech/ldf_jb2/source/common +LURATECH_CFLAGS += -Ithirdparty/luratech/lwf_jp2/library/source -endif +THIRD_CFLAGS += $(LURATECH_CFLAGS) -DHAVE_LURATECH=1 -# --- ZLIB --- +$(OUT)/thirdparty/luratech/%.o: thirdparty/luratech/%.c + $(CC_CMD) -DLINUX $(LURATECH_CFLAGS) -Wno-tautological-compare -Wno-absolute-value -ifneq "$(wildcard $(ZLIB_DIR)/README)" "" - -ZLIB_OUT := $(OUT)/thirdparty/zlib -ZLIB_SRC := \ - adler32.c \ - compress.c \ - crc32.c \ - deflate.c \ - inffast.c \ - inflate.c \ - inftrees.c \ - trees.c \ - uncompr.c \ - zutil.c \ - gzlib.c \ - gzwrite.c \ - gzclose.c \ - gzread.c \ - -ZLIB_OBJ := $(addprefix $(ZLIB_OUT)/, $(ZLIB_SRC:%.c=%.o)) - -$(ZLIB_OUT): - $(MKDIR_CMD) -$(ZLIB_OUT)/%.o: $(ZLIB_DIR)/%.c | $(ZLIB_OUT) - $(CC_CMD) -Dverbose=-1 -DHAVE_UNISTD_H -DHAVE_STDARG_H - -ZLIB_CFLAGS := -I$(ZLIB_DIR) -else -ZLIB_CFLAGS := $(SYS_ZLIB_CFLAGS) -ZLIB_LIBS := $(SYS_ZLIB_LIBS) -endif +else # HAVE_LURATECH -# --- LCMS2 --- +# --- JBIG2DEC --- -ifneq "$(wildcard $(LCMS2_DIR)/INSTALL)" "" - -LCMS2_OUT := $(OUT)/lcms2 -LCMS2_SRC := \ - cmsalpha.c \ - cmscam02.c \ - cmscgats.c \ - cmscnvrt.c \ - cmserr.c \ - cmsgamma.c \ - cmsgmt.c \ - cmshalf.c \ - cmsintrp.c \ - cmsio0.c \ - cmsio1.c \ - cmslut.c \ - cmsmd5.c \ - cmsmtrx.c \ - cmsnamed.c \ - cmsopt.c \ - cmspack.c \ - cmspcs.c \ - cmsplugin.c \ - cmsps2.c \ - cmssamp.c \ - cmssm.c \ - cmstypes.c \ - cmsvirt.c \ - cmswtpnt.c \ - cmsxform.c \ - -LCMS2_OBJ := $(addprefix $(LCMS2_OUT)/, $(LCMS2_SRC:%.c=%.o)) - -$(LCMS2_OUT): - $(MKDIR_CMD) -$(LCMS2_OUT)/%.o: $(LCMS2_DIR)/src/%.c | $(LCMS2_OUT) - $(CC_CMD) -I$(LCMS2_DIR)/include - -LCMS2_CFLAGS := -I$(LCMS2_DIR)/include +ifeq ($(USE_SYSTEM_JBIG2DEC),yes) + THIRD_CFLAGS += $(SYS_JBIG2DEC_CFLAGS) + THIRD_LIBS += $(SYS_JBIG2DEC_LIBS) else -LCMS2_CFLAGS := -DNO_ICC -endif -# --- cURL --- - -ifneq "$(wildcard $(CURL_DIR)/README)" "" +THIRD_SRC += thirdparty/jbig2dec/jbig2.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_arith.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_arith_iaid.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_arith_int.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_generic.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_halftone.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_huffman.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_image.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_metadata.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_mmr.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_page.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_refinement.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_segment.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_symbol_dict.c +THIRD_SRC += thirdparty/jbig2dec/jbig2_text.c + +THIRD_CFLAGS += -Ithirdparty/jbig2dec + +$(OUT)/thirdparty/jbig2dec/%.o: thirdparty/jbig2dec/%.c + $(CC_CMD) -DHAVE_STDINT_H -DJBIG_EXTERNAL_MEMENTO_H=\"mupdf/memento.h\" -CURL_LIB := $(OUT)/libcurl.a -CURL_OUT := $(OUT)/thirdparty/curl -CURL_SRC := \ - base64.c \ - conncache.c \ - connect.c \ - content_encoding.c \ - curl_addrinfo.c \ - dotdot.c \ - easy.c \ - escape.c \ - fileinfo.c \ - formdata.c \ - getenv.c \ - getinfo.c \ - hash.c \ - hostcheck.c \ - hostip4.c \ - hostip.c \ - hostsyn.c \ - http.c \ - http_chunks.c \ - if2ip.c \ - llist.c \ - mprintf.c \ - multi.c \ - netrc.c \ - nonblock.c \ - openssl.c \ - parsedate.c \ - pipeline.c \ - progress.c \ - select.c \ - sendf.c \ - share.c \ - slist.c \ - speedcheck.c \ - splay.c \ - strcase.c \ - strdup.c \ - strerror.c \ - timeval.c \ - transfer.c \ - url.c \ - version.c \ - vtls.c \ - warnless.c \ - wildcard.c - -$(CURL_LIB): $(addprefix $(CURL_OUT)/, $(CURL_SRC:%.c=%.o)) - -$(CURL_OUT): - $(MKDIR_CMD) - -CRL_CFLAGS := -DHAVE_CONFIG_H -DBUILDING_LIBCURL -DCURL_STATICLIB \ - -DCURL_DISABLE_LDAP -I$(CURL_DIR)/include -I$(CURL_DIR)/lib -ifeq "$(HAVE_OPENSSL_SSL)" "yes" -CRL_CFLAGS += -DUSE_OPENSSL endif -$(CURL_OUT)/%.o: $(CURL_DIR)/lib/%.c | $(CURL_OUT) - $(CC_CMD) $(CRL_CFLAGS) +# --- OPENJPEG --- -$(CURL_OUT)/%.o: $(CURL_DIR)/lib/vtls/%.c | $(CURL_OUT) - $(CC_CMD) $(CRL_CFLAGS) - -CURL_CFLAGS := -I$(CURL_DIR)/include -CURL_LIBS := $(SYS_CURL_DEPS) +ifeq ($(USE_SYSTEM_OPENJPEG),yes) + THIRD_CFLAGS += $(SYS_OPENJPEG_CFLAGS) + THIRD_LIBS += $(SYS_OPENJPEG_LIBS) +else -HAVE_CURL := yes +OPENJPEG_CFLAGS += -Ithirdparty/openjpeg/src/lib/openjp2 +OPENJPEG_CFLAGS += -DOPJ_STATIC +OPENJPEG_CFLAGS += -DOPJ_HAVE_STDINT_H -DOPJ_HAVE_INTTYPES_H + +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/bio.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/cio.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/dwt.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/event.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/function_list.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/image.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/invert.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/j2k.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/jp2.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/mct.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/mqc.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/openjpeg.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/pi.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/raw.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/t1.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/t2.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/tcd.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/tgt.c +THIRD_SRC += thirdparty/openjpeg/src/lib/openjp2/thread.c + +THIRD_CFLAGS += $(OPENJPEG_CFLAGS) + +$(OUT)/thirdparty/openjpeg/%.o: thirdparty/openjpeg/%.c + $(CC_CMD) $(OPENJPEG_CFLAGS) -else ifeq "$(HAVE_CURL)" "yes" -CURL_CFLAGS := $(SYS_CURL_CFLAGS) -CURL_LIBS := $(SYS_CURL_LIBS) endif -# --- FreeGLUT --- +endif # HAVE_LURATECH -ifneq "$(wildcard $(GLUT_DIR)/README)" "" +# --- FreeGLUT --- -ifeq "$(OS)" "MACOS" -GLUT_CFLAGS := $(SYS_GLUT_CFLAGS) -GLUT_LIBS := $(SYS_GLUT_LIBS) +ifeq ($(USE_SYSTEM_GLUT),yes) + GLUT_CFLAGS := $(SYS_GLUT_CFLAGS) + GLUT_LIBS := $(SYS_GLUT_LIBS) else -HAVE_GLUT := yes +GLUT_SRC += $(sort $(wildcard thirdparty/freeglut/src/fg_*.c)) +GLUT_SRC += $(sort $(wildcard thirdparty/freeglut/src/x11/*.c)) + +GLUT_OBJ := $(GLUT_SRC:%.c=$(OUT)/%.o) + +LOCAL_GLUT_CFLAGS += -Ithirdparty/freeglut/include +LOCAL_GLUT_CFLAGS += -Ithirdparty/freeglut/src +LOCAL_GLUT_CFLAGS += -DHAVE_UNISTD_H -DHAVE_STDINT_H -DHAVE_X11_EXTENSIONS_XRANDR_H GLUT_LIB := $(OUT)/libfreeglut.a -GLUT_OUT := $(OUT)/thirdparty/freeglut -GLUT_SRC := \ - fg_callbacks.c \ - fg_cursor.c \ - fg_display.c \ - fg_ext.c \ - fg_font.c \ - fg_font_data.c \ - fg_gamemode.c \ - fg_geometry.c \ - fg_gl2.c \ - fg_init.c \ - fg_input_devices.c \ - fg_joystick.c \ - fg_main.c \ - fg_menu.c \ - fg_misc.c \ - fg_overlay.c \ - fg_spaceball.c \ - fg_state.c \ - fg_stroke_mono_roman.c \ - fg_stroke_roman.c \ - fg_structure.c \ - fg_teapot.c \ - fg_videoresize.c \ - fg_window.c - -GLUT_X11_SRC := \ - fg_cursor_x11.c \ - fg_display_x11_glx.c \ - fg_ext_x11.c \ - fg_gamemode_x11.c \ - fg_glutfont_definitions_x11.c \ - fg_init_x11.c \ - fg_input_devices_x11.c \ - fg_joystick_x11.c \ - fg_main_x11.c \ - fg_menu_x11.c \ - fg_spaceball_x11.c \ - fg_state_x11.c \ - fg_state_x11_glx.c \ - fg_structure_x11.c \ - fg_window_x11.c \ - fg_window_x11_glx.c \ - fg_xinput_x11.c - -GLUT_OBJ := $(addprefix $(GLUT_OUT)/, $(GLUT_SRC:%.c=%.o)) -GLUT_OBJ += $(addprefix $(GLUT_OUT)/, $(GLUT_X11_SRC:%.c=%.o)) $(GLUT_LIB): $(GLUT_OBJ) -$(GLUT_OUT): - $(MKDIR_CMD) -$(GLUT_OUT)/%.o: $(GLUT_DIR)/src/%.c | $(GLUT_OUT) - $(CC_CMD) -I$(GLUT_DIR)/include -I$(GLUT_DIR)/src -Wno-unused-function -Wno-unused-const-variable \ - -DHAVE_UNISTD_H -DHAVE_STDINT_H -DHAVE_X11_EXTENSIONS_XRANDR_H -$(GLUT_OUT)/%.o: $(GLUT_DIR)/src/x11/%.c | $(GLUT_OUT) - $(CC_CMD) -I$(GLUT_DIR)/include -I$(GLUT_DIR)/src -Wno-unused-function \ - -DHAVE_UNISTD_H -DHAVE_STDINT_H -DHAVE_X11_EXTENSIONS_XRANDR_H - -GLUT_CFLAGS := -I$(GLUT_DIR)/include + +$(OUT)/thirdparty/freeglut/%.o: thirdparty/freeglut/%.c + $(CC_CMD) $(LOCAL_GLUT_CFLAGS) + +GLUT_CFLAGS := -Ithirdparty/freeglut/include GLUT_LIBS := -lGL -lX11 -lXrandr endif + +# --- cURL --- + +ifeq ($(USE_SYSTEM_CURL),yes) + CURL_CFLAGS := $(SYS_CURL_CFLAGS) + CURL_LIBS := $(SYS_CURL_LIBS) else -GLUT_CFLAGS := $(SYS_GLUT_CFLAGS) -GLUT_LIBS := $(SYS_GLUT_LIBS) -endif -# --- X11 --- +CURL_SRC += $(sort $(wildcard thirdparty/curl/lib/*.c)) +CURL_SRC += $(sort $(wildcard thirdparty/curl/lib/vauth/*.c)) +CURL_SRC += $(sort $(wildcard thirdparty/curl/lib/vtls/*.c)) -ifeq "$(HAVE_X11)" "yes" -X11_CFLAGS := $(SYS_X11_CFLAGS) -X11_LIBS := $(SYS_X11_LIBS) -endif +CURL_OBJ := $(CURL_SRC:%.c=$(OUT)/%.o) -# --- OpenSSL --- +LOCAL_CURL_CFLAGS += -DHAVE_CONFIG_H +LOCAL_CURL_CFLAGS += -DBUILDING_LIBCURL +LOCAL_CURL_CFLAGS += -DCURL_STATICLIB +LOCAL_CURL_CFLAGS += -DCURL_DISABLE_LDAP +LOCAL_CURL_CFLAGS += -Ithirdparty/curl/include +LOCAL_CURL_CFLAGS += -Ithirdparty/curl/lib -ifeq "$(HAVE_LIBCRYPTO)" "yes" -LIBCRYPTO_CFLAGS := $(SYS_LIBCRYPTO_CFLAGS) -LIBCRYPTO_LIBS := $(SYS_LIBCRYPTO_LIBS) -endif +CURL_LIB := $(OUT)/libcurl.a -# --- pthread --- +$(CURL_LIB): $(CURL_OBJ) + +$(OUT)/thirdparty/curl/%.o: thirdparty/curl/%.c + $(CC_CMD) $(LOCAL_CURL_CFLAGS) + +CURL_CFLAGS := -Ithirdparty/curl/include +CURL_LIBS := -lpthread -ifneq "$(threading)" "no" -ifeq "$(HAVE_PTHREAD)" "yes" -THREADING_CFLAGS := $(SYS_PTHREAD_CFLAGS) -DHAVE_PTHREAD -THREADING_LIBS := $(SYS_PTHREAD_LIBS) -endif endif -- cgit v1.2.3