2 Star 6 Fork 0

bruisebd/mupdf

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
Makethird 15.10 KB
一键复制 编辑 原始数据 按行查看 历史
曾亮 提交于 2017-02-21 15:47 . ios:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719
# 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
JPEG_DIR := thirdparty/jpeg
MUJS_DIR := thirdparty/mujs
OPENJPEG_DIR := thirdparty/openjpeg/src/lib/openjp2
ZLIB_DIR := thirdparty/zlib
LURATECH_DIR := thirdparty/luratech
JPEGXR_DIR := thirdparty/jpegxr
CURL_DIR := thirdparty/curl
GLFW_DIR := thirdparty/glfw
# --- MuJS ---
ifneq "$(wildcard $(MUJS_DIR)/README)" ""
MUJS_OUT := $(OUT)/mujs
MUJS_SRC := one.c
MUJS_OBJ := $(addprefix $(MUJS_OUT)/, $(MUJS_SRC:%.c=%.o))
$(MUJS_OUT)/one.o: $(wildcard $(MUJS_DIR)/js*.c $(MUJS_DIR)/utf*.c $(MUJS_DIR)/regex.c $(MUJS_DIR)/*.h)
$(MUJS_OUT):
$(MKDIR_CMD)
$(MUJS_OUT)/%.o: $(MUJS_DIR)/%.c | $(MUJS_OUT)
$(CC_CMD)
MUJS_CFLAGS := -I$(MUJS_DIR)
else
MUJS_CFLAGS := -DFZ_ENABLE_JS=0
endif
# --- FreeType 2 ---
ifneq "$(wildcard $(FREETYPE_DIR)/README)" ""
FREETYPE_OUT := $(OUT)/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 := -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
else
FREETYPE_CFLAGS := $(SYS_FREETYPE_CFLAGS)
FREETYPE_LIBS := $(SYS_FREETYPE_LIBS)
endif
# --- HarfBuzz ---
ifneq "$(wildcard $(HARFBUZZ_DIR)/README)" ""
HARFBUZZ_OUT := $(OUT)/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)
$(CC_CMD) -DHAVE_OT -DHAVE_UCDN -DHB_NO_MT $(FREETYPE_CFLAGS) \
-Dhb_malloc_impl=hb_malloc -Dhb_calloc_impl=hb_calloc \
-Dhb_free_impl=hb_free -Dhb_realloc_impl=hb_realloc \
-fno-rtti -fno-exceptions -fvisibility-inlines-hidden --std=c++0x
HARFBUZZ_CFLAGS := -I$(HARFBUZZ_DIR)/src
else
HARFBUZZ_CFLAGS := $(SYS_HARFBUZZ_CFLAGS)
HARFBUZZ_LIBS := $(SYS_HARFBUZZ_LIBS)
endif
# --- LURATECH ---
ifneq "$(wildcard $(LURATECH_DIR)/ldf_jb2)$(wildcard $(LURATECH_DIR)/lwf_jp2)" ""
LURATECH_OUT := $(OUT)/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 ---
# --- JBIG2DEC ---
ifneq "$(wildcard $(JBIG2DEC_DIR)/README)" ""
JBIG2DEC_OUT := $(OUT)/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\"
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)/openjpeg
OPENJPEG_SRC := \
bio.c \
cidx_manager.c \
cio.c \
dwt.c \
event.c \
function_list.c \
image.c \
invert.c \
j2k.c \
jp2.c \
mct.c \
mqc.c \
openjpeg.c \
phix_manager.c \
pi.c \
ppix_manager.c \
raw.c \
t1.c \
t2.c \
tcd.c \
tgt.c \
thix_manager.c \
tpix_manager.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) -DOPJ_STATIC -DOPJ_HAVE_STDINT_H
OPENJPEG_CFLAGS += -I$(OPENJPEG_DIR) -DOPJ_HAVE_INTTYPES_H=1 -DUSE_JPIP=1
else
OPENJPEG_CFLAGS := $(SYS_OPENJPEG_CFLAGS)
OPENJPEG_LIBS := $(SYS_OPENJPEG_LIBS)
endif
endif # --- LURATECH ---
# --- JPEG library from IJG ---
ifneq "$(wildcard $(JPEG_DIR)/README)" ""
JPEG_OUT := $(OUT)/jpeg
JPEG_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 \
JPEG_OBJ := $(addprefix $(JPEG_OUT)/, $(JPEG_SRC:%.c=%.o))
$(JPEG_OUT):
$(MKDIR_CMD)
$(JPEG_OUT)/%.o: $(JPEG_DIR)/%.c | $(JPEG_OUT)
$(CC_CMD) -Dmain=xxxmain
JPEG_CFLAGS := -Iscripts/jpeg -I$(JPEG_DIR)
else
JPEG_CFLAGS := $(SYS_JPEG_CFLAGS) -DSHARE_JPEG
JPEG_LIBS := $(SYS_JPEG_LIBS)
endif
# --- jpegxr ---
ifneq "$(wildcard $(JPEGXR_DIR)/T835E.pdf)" ""
JPEGXR_OUT := $(OUT)/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
JPEGXR_OBJ := $(addprefix $(JPEGXR_OUT)/, $(JPEGXR_SRC:%.c=%.o))
$(JPEGXR_OUT):
$(MKDIR_CMD)
$(JPEGXR_OUT)/%.o: $(JPEGXR_DIR)/Software/%.c | $(JPEGXR_OUT)
$(CC_CMD) $(JPEGXR_CFLAGS)
JPEGXR_CFLAGS := \
-I$(JPEGXR_DIR) \
-I$(JPEGXR_DIR)/Software \
-DHAVE_JPEGXR
endif
# --- ZLIB ---
ifneq "$(wildcard $(ZLIB_DIR)/README)" ""
ZLIB_OUT := $(OUT)/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
# --- cURL ---
ifneq "$(wildcard $(CURL_DIR)/README)" ""
CURL_LIB := $(OUT)/libcurl.a
CURL_OUT := $(OUT)/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_INCLUDE := -I$(CURL_DIR)/include -I$(CURL_DIR)/lib
CRL_CFLAGS := -DHAVE_CONFIG_H -DBUILDING_LIBCURL -DCURL_STATICLIB \
-DCURL_DISABLE_LDAP $(CRL_INCLUDE)
$(CURL_OUT)/%.o: $(CURL_DIR)/lib/%.c | $(CURL_OUT)
$(CC_CMD) $(CRL_CFLAGS)
$(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)
HAVE_CURL := yes
else ifeq "$(HAVE_CURL)" "yes"
CURL_CFLAGS := $(SYS_CURL_CFLAGS)
CURL_LIBS := $(SYS_CURL_LIBS)
endif
ifeq "$(HAVE_OPENSSL_SSL)" "yes"
CRL_CFLAGS += -DUSE_OPENSSL
SYS_CURL_DEPS += $(SSL_LIBS)
endif
# --- GLFW ---
ifneq "$(wildcard $(GLFW_DIR)/README.md)" ""
GLFW_LIB := $(OUT)/libglfw.a
GLFW_OUT := $(OUT)/glfw
ifeq "$(OS)" "MACOS"
GLFW_SRC := \
cocoa_init.m \
cocoa_monitor.m \
cocoa_window.m \
context.c \
init.c \
input.c \
iokit_joystick.m \
mach_time.m \
monitor.c \
nsgl_context.m \
posix_tls.c \
window.c
$(GLFW_OUT)/%.o: $(GLFW_DIR)/src/%.m | $(GLFW_OUT)
$(CC_CMD) -D_GLFW_COCOA -D_GLFW_NSGL -D_GLFW_USE_MENUBAR -D_GLFW_USE_RETINA -D_GLFW_USE_OPENGL -Wno-deprecated-declarations
$(GLFW_OUT)/%.o: $(GLFW_DIR)/src/%.c | $(GLFW_OUT)
$(CC_CMD) -D_GLFW_COCOA -D_GLFW_NSGL -D_GLFW_USE_MENUBAR -D_GLFW_USE_RETINA -D_GLFW_USE_OPENGL
GLFW_OBJ := $(addprefix $(GLFW_OUT)/, $(GLFW_SRC))
GLFW_OBJ := $(GLFW_OBJ:%.c=%.o)
GLFW_OBJ := $(GLFW_OBJ:%.m=%.o)
$(GLFW_LIB): $(GLFW_OBJ)
GLFW_LIBS := -framework OpenGL -framework IOKit -framework CoreVideo -framework Cocoa
else
GLFW_SRC := \
context.c \
glx_context.c \
init.c \
input.c \
linux_joystick.c \
monitor.c \
posix_time.c \
posix_tls.c \
window.c \
x11_init.c \
x11_monitor.c \
x11_window.c \
xkb_unicode.c
$(GLFW_OUT)/%.o: $(GLFW_DIR)/src/%.c | $(GLFW_OUT)
$(CC_CMD) -D_GLFW_X11 -D_GLFW_GLX -D_GLFW_USE_OPENGL -D_GLFW_HAS_GLXGETPROCADDRESS
$(GLFW_LIB): $(addprefix $(GLFW_OUT)/, $(GLFW_SRC:%.c=%.o))
GLFW_LIBS := -lGL -lX11 -lXcursor -lXrandr -lXinerama -lpthread
endif
GLFW_CFLAGS := -I$(GLFW_DIR)/include
$(GLFW_OUT):
$(MKDIR_CMD)
GLFW_SRC_UNUSED := \
egl_context.c \
mach_time.c \
mir_init.c \
mir_monitor.c \
mir_window.c \
win32_init.c \
win32_monitor.c \
win32_time.c \
win32_tls.c \
win32_window.c \
winmm_joystick.c \
wgl_context.c \
wl_init.c \
wl_monitor.c \
wl_window.c \
HAVE_GLFW := yes
else ifeq "$(HAVE_GLFW)" "yes"
GLFW_CFLAGS := $(SYS_GLFW_CFLAGS)
GLFW_LIBS := $(SYS_GLFW_LIBS)
endif
# --- X11 ---
ifeq "$(HAVE_X11)" "yes"
X11_CFLAGS := $(SYS_X11_CFLAGS)
X11_LIBS := $(SYS_X11_LIBS)
endif
# --- OpenSSL ---
ifeq "$(HAVE_LIBCRYPTO)" "yes"
LIBCRYPTO_CFLAGS ?= $(SYS_LIBCRYPTO_CFLAGS)
LIBCRYPTO_LIBS ?= $(SYS_LIBCRYPTO_LIBS)
endif
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/bruisebd/mupdf.git
[email protected]:bruisebd/mupdf.git
bruisebd
mupdf
mupdf
master

搜索帮助