Add FLIF library

This commit is contained in:
Ehmry - 2019-02-27 01:56:58 +01:00
parent 1b7223809e
commit 207d58ea0e
4 changed files with 130 additions and 0 deletions

3
.gitmodules vendored
View File

@ -61,3 +61,6 @@
[submodule "libretro/cores/dinothawr/core"]
path = libretro/cores/dinothawr/core
url = https://github.com/libretro/Dinothawr
[submodule "lib/FLIF/upstream"]
path = lib/FLIF/upstream
url = https://github.com:FLIF-hub/FLIF

45
lib/FLIF/Tupfile Normal file
View File

@ -0,0 +1,45 @@
include_rules
CXX = `pkg-config genode-base --variable cxx`
LD = `pkg-config genode-base --variable ld`
PKG_CONFIGS = genode-lib stdcxx libm
# See upstream/src/CMakeLists.txt
FLIF_SRC_DIR = upstream/src
FILES_CPP = \
$(FLIF_SRC_DIR)/image/crc32k.cpp \
$(FLIF_SRC_DIR)/image/image-metadata.cpp \
$(FLIF_SRC_DIR)/image/image-pam.cpp \
$(FLIF_SRC_DIR)/image/image-png.cpp \
$(FLIF_SRC_DIR)/image/image-pnm.cpp \
$(FLIF_SRC_DIR)/image/image-rggb.cpp \
$(FLIF_SRC_DIR)/image/image.cpp \
$(FLIF_SRC_DIR)/maniac/bit.cpp \
$(FLIF_SRC_DIR)/maniac/chance.cpp \
$(FLIF_SRC_DIR)/maniac/symbol.cpp \
$(FLIF_SRC_DIR)/transform/factory.cpp \
$(FLIF_SRC_DIR)/io.cpp \
$(FLIF_SRC_DIR)/common.cpp \
$(FLIF_SRC_DIR)/flif-enc.cpp \
$(FLIF_SRC_DIR)/library/flif-interface.cpp \
CXXFLAGS += -std=gnu++11
CXXFLAGS += -DLODEPNG_NO_COMPILE_PNG -DLODEPNG_NO_COMPILE_DISK
CXXFLAGS += -DNDEBUG -O2 -ftree-vectorize -Wall
CXXFLAGS += -DINT16_MAX=0x7fff
CXXFLAGS += `pkg-config --cflags $(PKG_CONFIGS) png zlib`
LDFLAGS += `pkg-config --libs $(PKG_CONFIGS)`
: foreach $(FILES_CPP) |> ^ CXX %f^ $(CXX) -c %f -o %o $(CXXFLAGS) |> %b.o {objects}
: {objects} |> ^ LD %o^ $(LD) %f -o %o $(LDFLAGS) |> flif.lib.so
: flif.lib.so |> strip -o %o %f |> $(DEPOT_DIR)/bin/x86_64/%d/@(DEPOT_VERSION)/%b {binary}
ifdef DEPOT_KEY
: {binary} |> !depot_bin_tarball |> {tarballs}
: foreach {tarballs} |> !public_signature |>
endif

81
lib/FLIF/symbols Normal file
View File

@ -0,0 +1,81 @@
flif_abort_decoder T
flif_create_decoder T
flif_create_encoder T
flif_create_image_GRAY16 T
flif_create_image_GRAY T
flif_create_image_HDR T
flif_create_image_PALETTE T
flif_create_image_RGB T
flif_create_image T
flif_decoder_decode_filepointer T
flif_decoder_decode_file T
flif_decoder_decode_memory T
flif_decoder_generate_preview T
flif_decoder_get_image T
flif_decoder_num_images T
flif_decoder_num_loops T
flif_decoder_set_callback T
flif_decoder_set_crc_check T
flif_decoder_set_first_callback_quality T
flif_decoder_set_fit T
flif_decoder_set_quality T
flif_decoder_set_resize T
flif_decoder_set_scale T
flif_destroy_decoder T
flif_destroy_encoder T
flif_destroy_image T
flif_destroy_info T
flif_encoder_add_image_move T
flif_encoder_add_image T
flif_encoder_encode_file T
flif_encoder_encode_memory T
flif_encoder_set_alpha_zero_lossless T
flif_encoder_set_auto_color_buckets T
flif_encoder_set_chance_alpha T
flif_encoder_set_chance_cutoff T
flif_encoder_set_channel_compact T
flif_encoder_set_crc_check T
flif_encoder_set_divisor T
flif_encoder_set_frame_shape T
flif_encoder_set_interlaced T
flif_encoder_set_learn_repeat T
flif_encoder_set_lookback T
flif_encoder_set_lossy T
flif_encoder_set_min_size T
flif_encoder_set_palette_size T
flif_encoder_set_split_threshold T
flif_encoder_set_ycocg T
flif_free_memory T
flif_image_free_metadata T
flif_image_get_depth T
flif_image_get_frame_delay T
flif_image_get_height T
flif_image_get_metadata T
flif_image_get_nb_channels T
flif_image_get_palette_size T
flif_image_get_palette T
flif_image_get_width T
flif_image_read_row_GRAY16 T
flif_image_read_row_GRAY8 T
flif_image_read_row_PALETTE8 T
flif_image_read_row_RGBA16 T
flif_image_read_row_RGBA8 T
flif_image_set_frame_delay T
flif_image_set_metadata T
flif_image_set_palette T
flif_image_write_row_GRAY16 T
flif_image_write_row_GRAY8 T
flif_image_write_row_PALETTE8 T
flif_image_write_row_RGBA16 T
flif_image_write_row_RGBA8 T
flif_import_image_GRAY16 T
flif_import_image_GRAY T
flif_import_image_PALETTE T
flif_import_image_RGBA T
flif_import_image_RGB T
flif_info_get_depth T
flif_info_get_height T
flif_info_get_nb_channels T
flif_info_get_width T
flif_info_num_images T
flif_read_info_from_memory T

1
lib/FLIF/upstream Submodule

@ -0,0 +1 @@
Subproject commit 74ea92bf1ab2db18ae6d2a521dff946fcc679618