⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 JPEG2000实现的源码
💻
字号:
CC = gcc

INCLUDES = -I../common -I../image_io -I../arith_coder -I../collections_io
#LANL start
INCLUDES += -I../transform_annexG -I../components -I../info
#LANL end
C_OPT = -O -ansi -g
CFLAGS = $(INCLUDES) $(C_OPT) -DIMPLEMENT_16
#LANL start
CFLAGS += -DLANL_CMPNT_WVLT
#LANL end

BIN_DIR = ../bin

COMMON_OBJS = local_services.o

COMMAND_OBJS = std_cmdl.o

FORWARD_INFO_OBJS = std_forward_info.o lra.o
REVERSE_INFO_OBJS = std_reverse_info.o
COMMON_INFO_OBJS = std_kernel_info.o

FORWARD_ROI_OBJS = ref_forward_roi.o
REVERSE_ROI_OBJS = ref_reverse_roi.o
COMMON_ROI_OBJS = ref_roi_common.o

MIXER_OBJS = component_mix.o
DEMIXER_OBJS = component_demix.o
COLLECTION_OBJS = xccxct.o

ANALYSIS_OBJS = hplx_analysis.o hplx_hor_analysis_by_convolution.o hplx_hor_analysis_by_lifting.o hplx_vert_analysis_by_convolution.o hplx_vert_analysis_by_lifting.o hplx_support.o
SYNTHESIS_OBJS = hplx_synthesis.o hplx_hor_synthesis_by_convolution.o hplx_hor_synthesis_by_lifting.o hplx_vert_synthesis_by_convolution.o hplx_vert_synthesis_by_lifting.o hplx_support.o
COMMON_TRANSFORM_OBJS = hplx_vert_convolution.o hplx_vert_lifting.o
COMMON_TRANSFORM_ANNEX_G_OBJS = Extension.o FilterBank.o Lifting.o Step.o VMInterface.o

QUANTIZER_OBJS = hpdz_quant.o tcq_quant.o tcq_quantizer.o
DEQUANTIZER_OBJS = hpdz_dequant.o tcq_dequant.o tcq_dequantizer.o

EBCOT_ENCODER_OBJS = ebcot_encoder.o ebcot_lite_encode_passes.o ebcot_send_bits.o ebcot_vpw.o
EBCOT_DECODER_OBJS = ebcot_decoder.o ebcot_lite_decode_passes.o ebcot_receive_bits.o
COMMON_CODING_OBJS = ebcot_common.o

ARITH_ENCODER_OBJS = dst_arith_encoder.o
ARITH_DECODER_OBJS = dst_arith_decoder.o
COMMON_ARITH_CODER_OBJS = dst_arith_coder_common.o dst_codeword_heap.o

STREAM_OUT_OBJS = hpbit_stream_out.o
STREAM_IN_OBJS = hpbit_stream_in.o

IMAGE_READER_OBJS = simple_image_reader.o mcraw_image_reader.o mcraw_common.o
IMAGE_WRITER_OBJS = simple_image_writer.o mcraw_image_writer.o mcraw_common.o

all :: vm9_compress vm9_expand clean

vm9_compress :: $(COMMON_OBJS) $(COMMAND_OBJS) $(FORWARD_INFO_OBJS) $(COMMON_INFO_OBJS) $(FORWARD_ROI_OBJS) $(COMMON_ROI_OBJS) $(MIXER_OBJS) $(COLLECTION_OBJS) $(ANALYSIS_OBJS) $(COMMON_TRANSFORM_OBJS) $(COMMON_TRANSFORM_ANNEX_G_OBJS) $(QUANTIZER_OBJS) $(EBCOT_ENCODER_OBJS) $(COMMON_CODING_OBJS) $(ARITH_ENCODER_OBJS) $(COMMON_ARITH_CODER_OBJS) $(STREAM_OUT_OBJS) $(IMAGE_READER_OBJS) ../vm9_compress/compress.c
	$(CC) $(CFLAGS) ../vm9_compress/compress.c \
	      $(COMMON_OBJS) \
	      $(COMMAND_OBJS) \
	      $(FORWARD_INFO_OBJS) \
	      $(COMMON_INFO_OBJS) \
	      $(FORWARD_ROI_OBJS) \
	      $(COMMON_ROI_OBJS) \
	      $(MIXER_OBJS) \
              $(COLLECTION_OBJS) \
	      $(ANALYSIS_OBJS) \
	      $(COMMON_TRANSFORM_OBJS) \
	      $(COMMON_TRANSFORM_ANNEX_G_OBJS) \
	      $(QUANTIZER_OBJS) \
	      $(EBCOT_ENCODER_OBJS) \
	      $(COMMON_CODING_OBJS) \
	      $(ARITH_ENCODER_OBJS) \
	      $(COMMON_ARITH_CODER_OBJS) \
	      $(STREAM_OUT_OBJS) \
	      $(IMAGE_READER_OBJS) \
	      -o $(BIN_DIR)/vm9_compress_16 -lm

vm9_expand :: $(COMMON_OBJS) $(COMMAND_OBJS) $(REVERSE_INFO_OBJS) $(COMMON_INFO_OBJS) $(REVERSE_ROI_OBJS) $(COMMON_ROI_OBJS) $(DEMIXER_OBJS) $(SYNTHESIS_OBJS) $(COMMON_TRANSFORM_OBJS) $(COMMON_TRANSFORM_ANNEX_G_OBJS) $(DEQUANTIZER_OBJS) $(EBCOT_DECODER_OBJS) $(COMMON_CODING_OBJS) $(ARITH_DECODER_OBJS) $(COMMON_ARITH_CODER_OBJS) $(STREAM_IN_OBJS) $(IMAGE_WRITER_OBJS) ../vm9_expand/decompress.c
	$(CC) $(CFLAGS) ../vm9_expand/decompress.c \
	      $(COMMON_OBJS) \
	      $(COMMAND_OBJS) \
	      $(REVERSE_INFO_OBJS) \
	      $(COMMON_INFO_OBJS) \
	      $(REVERSE_ROI_OBJS) \
	      $(COMMON_ROI_OBJS) \
	      $(DEMIXER_OBJS) \
	      $(SYNTHESIS_OBJS) \
	      $(COMMON_TRANSFORM_OBJS) \
	      $(COMMON_TRANSFORM_ANNEX_G_OBJS) \
	      $(DEQUANTIZER_OBJS) \
	      $(EBCOT_DECODER_OBJS) \
	      $(COMMON_CODING_OBJS) \
	      $(ARITH_DECODER_OBJS) \
	      $(COMMON_ARITH_CODER_OBJS) \
	      $(STREAM_IN_OBJS) \
	      $(IMAGE_WRITER_OBJS) \
	      -o $(BIN_DIR)/vm9_expand_16 -lm

j2g_fiddle :: $(COMMON_OBJS) ../j2g_fiddle/j2g_fiddle.c
	$(CC) $(CFLAGS) ../j2g_fiddle/j2g_fiddle.c \
	      $(COMMON_OBJS) \
	      -o $(BIN_DIR)/j2g_fiddle -lm

# COMMON

local_services.o :: ../common/local_services.c
	$(CC) $(CFLAGS) -c ../common/local_services.c \
	      -o local_services.o

# COMMAND

std_cmdl.o :: ../command_line/std_cmdl.c
	$(CC) $(CFLAGS) -c ../command_line/std_cmdl.c \
	      -o std_cmdl.o

# INFO OBJECTS

std_forward_info.o :: ../info/std_forward_info.c
	$(CC) $(CFLAGS) -c ../info/std_forward_info.c \
	      -o std_forward_info.o
lra.o :: ../info/lra.c
	$(CC) $(CFLAGS) -c ../info/lra.c \
	      -o lra.o
std_reverse_info.o :: ../info/std_reverse_info.c
	$(CC) $(CFLAGS) -c ../info/std_reverse_info.c \
	      -o std_reverse_info.o
std_kernel_info.o :: ../info/std_kernel_info.c
	$(CC) $(CFLAGS) -c ../info/std_kernel_info.c \
	      -o std_kernel_info.o

# REGION-OF-INTEREST OBJECTS

ref_forward_roi.o :: ../roi/ref_forward_roi.c
	$(CC) $(CFLAGS) -c ../roi/ref_forward_roi.c \
	      -o ref_forward_roi.o
ref_reverse_roi.o :: ../roi/ref_reverse_roi.c
	$(CC) $(CFLAGS) -c ../roi/ref_reverse_roi.c \
	      -o ref_reverse_roi.o
ref_roi_common.o :: ../roi/ref_roi_common.c
	$(CC) $(CFLAGS) -c ../roi/ref_roi_common.c \
	      -o ref_roi_common.o

# COMPONENT MIXING OBJECTS

component_mix.o :: ../components/component_mix.c
	$(CC) $(CFLAGS) -c ../components/component_mix.c \
	      -o component_mix.o
component_demix.o :: ../components/component_demix.c
	$(CC) $(CFLAGS) -c ../components/component_demix.c \
	      -o component_demix.o

# COMPONENT COLLECTION OBJECTS

xccxct.o :: ../collections_io/xccxct.c
	$(CC) $(CFLAGS) -c ../collections_io/xccxct.c \
	      -o xccxct.o

# TRANSFORM OBJECTS

hplx_analysis.o :: ../transform/hplx_analysis.c
	$(CC) $(CFLAGS) -c ../transform/hplx_analysis.c \
	      -o hplx_analysis.o
hplx_synthesis.o :: ../transform/hplx_synthesis.c
	$(CC) $(CFLAGS) -c ../transform/hplx_synthesis.c \
	      -o hplx_synthesis.o
hplx_hor_analysis_by_convolution.o :: ../transform/hplx_hor_analysis_by_convolution.c
	$(CC) $(CFLAGS) -c ../transform/hplx_hor_analysis_by_convolution.c \
	      -o hplx_hor_analysis_by_convolution.o
hplx_hor_synthesis_by_convolution.o :: ../transform/hplx_hor_synthesis_by_convolution.c
	$(CC) $(CFLAGS) -c ../transform/hplx_hor_synthesis_by_convolution.c \
	      -o hplx_hor_synthesis_by_convolution.o
hplx_hor_analysis_by_lifting.o :: ../transform/hplx_hor_analysis_by_lifting.c
	$(CC) $(CFLAGS) -c ../transform/hplx_hor_analysis_by_lifting.c \
	      -o hplx_hor_analysis_by_lifting.o
hplx_hor_synthesis_by_lifting.o :: ../transform/hplx_hor_synthesis_by_lifting.c
	$(CC) $(CFLAGS) -c ../transform/hplx_hor_synthesis_by_lifting.c \
	      -o hplx_hor_synthesis_by_lifting.o
hplx_vert_analysis_by_convolution.o :: ../transform/hplx_vert_analysis_by_convolution.c
	$(CC) $(CFLAGS) -c ../transform/hplx_vert_analysis_by_convolution.c \
	      -o hplx_vert_analysis_by_convolution.o
hplx_vert_synthesis_by_convolution.o :: ../transform/hplx_vert_synthesis_by_convolution.c
	$(CC) $(CFLAGS) -c ../transform/hplx_vert_synthesis_by_convolution.c \
	      -o hplx_vert_synthesis_by_convolution.o
hplx_vert_analysis_by_lifting.o :: ../transform/hplx_vert_analysis_by_lifting.c
	$(CC) $(CFLAGS) -c ../transform/hplx_vert_analysis_by_lifting.c \
	      -o hplx_vert_analysis_by_lifting.o
hplx_vert_synthesis_by_lifting.o :: ../transform/hplx_vert_synthesis_by_lifting.c
	$(CC) $(CFLAGS) -c ../transform/hplx_vert_synthesis_by_lifting.c \
	      -o hplx_vert_synthesis_by_lifting.o
hplx_vert_convolution.o :: ../transform/hplx_vert_convolution.c
	$(CC) $(CFLAGS) -c ../transform/hplx_vert_convolution.c \
	      -o hplx_vert_convolution.o
hplx_vert_lifting.o :: ../transform/hplx_vert_lifting.c
	$(CC) $(CFLAGS) -c ../transform/hplx_vert_lifting.c \
	      -o hplx_vert_lifting.o
hplx_support.o :: ../transform/hplx_support.c
	$(CC) $(CFLAGS) -c ../transform/hplx_support.c \
	      -o hplx_support.o

# TRANSFORM ANNEX G OBJECTS
Extension.o :: ../transform_annexG/Extension.c
	$(CC) $(CFLAGS) -c ../transform_annexG/Extension.c \
	      -o Extension.o
FilterBank.o :: ../transform_annexG/FilterBank.c
	$(CC) $(CFLAGS) -c ../transform_annexG/FilterBank.c \
	      -o FilterBank.o
Lifting.o :: ../transform_annexG/Lifting.c
	$(CC) $(CFLAGS) -c ../transform_annexG/Lifting.c \
	      -o Lifting.o
Step.o :: ../transform_annexG/Step.c
	$(CC) $(CFLAGS) -c ../transform_annexG/Step.c \
	      -o Step.o
VMInterface.o :: ../transform_annexG/VMInterface.c
	$(CC) $(CFLAGS) -c ../transform_annexG/VMInterface.c \
	      -o VMInterface.o

# QUANTIZATION OBJECTS

hpdz_quant.o :: ../quantization/hpdz_quant.c
	$(CC) $(CFLAGS) -c ../quantization/hpdz_quant.c \
	      -o hpdz_quant.o
tcq_quant.o :: ../quantization/tcq_quant.c ../quantization/tcq_quant_local.h
	$(CC) $(CFLAGS) -c ../quantization/tcq_quant.c \
              -o tcq_quant.o
tcq_quantizer.o :: ../quantization/tcq_quantizer.c ../quantization/tcq_quant_local.h
	$(CC) $(CFLAGS) -c ../quantization/tcq_quantizer.c \
              -o tcq_quantizer.o
hpdz_dequant.o :: ../quantization/hpdz_dequant.c
	$(CC) $(CFLAGS) -c ../quantization/hpdz_dequant.c \
	      -o hpdz_dequant.o
tcq_dequant.o :: ../quantization/tcq_dequant.c ../quantization/tcq_dequant_local.h
	$(CC) $(CFLAGS) -c ../quantization/tcq_dequant.c \
	      -o tcq_dequant.o
tcq_dequantizer.o :: ../quantization/tcq_dequantizer.c ../quantization/tcq_dequant_local.h
	$(CC) $(CFLAGS) -c ../quantization/tcq_dequantizer.c \
	      -o tcq_dequantizer.o

# CODING OBJECTS

ebcot_common.o :: ../coding/ebcot_common.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_common.c \
	      -o ebcot_common.o
ebcot_encoder.o :: ../coding/ebcot_encoder.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_encoder.c \
	      -o ebcot_encoder.o
ebcot_decoder.o :: ../coding/ebcot_decoder.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_decoder.c \
	      -o ebcot_decoder.o
ebcot_lite_encode_passes.o :: ../coding/ebcot_lite_encode_passes.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_lite_encode_passes.c \
	      -o ebcot_lite_encode_passes.o
ebcot_lite_decode_passes.o :: ../coding/ebcot_lite_decode_passes.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_lite_decode_passes.c \
	      -o ebcot_lite_decode_passes.o
ebcot_send_bits.o :: ../coding/ebcot_send_bits.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_send_bits.c \
	      -o ebcot_send_bits.o
ebcot_receive_bits.o :: ../coding/ebcot_receive_bits.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_receive_bits.c \
	      -o ebcot_receive_bits.o
ebcot_vpw.o :: ../coding/ebcot_vpw.c
	$(CC) $(CFLAGS) -c ../coding/ebcot_vpw.c \
	      -o ebcot_vpw.o

# ARITHMETIC CODER

dst_arith_coder_common.o :: ../arith_coder/dst_arith_coder_common.c
	$(CC) $(CFLAGS) -c ../arith_coder/dst_arith_coder_common.c \
	      -o dst_arith_coder_common.o
dst_arith_encoder.o :: ../arith_coder/dst_arith_encoder.c
	$(CC) $(CFLAGS) -c ../arith_coder/dst_arith_encoder.c \
	      -o dst_arith_encoder.o
dst_arith_decoder.o :: ../arith_coder/dst_arith_decoder.c
	$(CC) $(CFLAGS) -c ../arith_coder/dst_arith_decoder.c \
	      -o dst_arith_decoder.o
dst_codeword_heap.o :: ../arith_coder/dst_codeword_heap.c
	$(CC) $(CFLAGS) -c ../arith_coder/dst_codeword_heap.c \
	      -o dst_codeword_heap.o

# BIT-STREAM OBJECTS

hpbit_stream_out.o :: ../bitstream/hpbit_stream_out.c
	$(CC) $(CFLAGS) -c ../bitstream/hpbit_stream_out.c \
	      -o hpbit_stream_out.o
hpbit_stream_in.o :: ../bitstream/hpbit_stream_in.c
	$(CC) $(CFLAGS) -c ../bitstream/hpbit_stream_in.c \
	      -o hpbit_stream_in.o

# IMAGE I/O

simple_image_reader.o :: ../image_io/simple_image_reader.c
	$(CC) $(CFLAGS) -c ../image_io/simple_image_reader.c \
	      -o simple_image_reader.o
simple_image_writer.o :: ../image_io/simple_image_writer.c
	$(CC) $(CFLAGS) -c ../image_io/simple_image_writer.c \
	      -o simple_image_writer.o
mcraw_image_reader.o :: ../ekc_contrib/image_io/mcraw_image_reader.c
	$(CC) $(CFLAGS) -c ../ekc_contrib/image_io/mcraw_image_reader.c \
	      -o mcraw_image_reader.o
mcraw_image_writer.o :: ../ekc_contrib/image_io/mcraw_image_writer.c
	$(CC) $(CFLAGS) -c ../ekc_contrib/image_io/mcraw_image_writer.c \
	      -o mcraw_image_writer.o
mcraw_common.o :: ../ekc_contrib/image_io/mcraw_common.c
	$(CC) $(CFLAGS) -c ../ekc_contrib/image_io/mcraw_common.c \
	      -o mcraw_common.o

clean ::
	rm *.o

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -