OLD | NEW |
1 ## | 1 ## |
2 ## Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 ## Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 ## | 3 ## |
4 ## Use of this source code is governed by a BSD-style license | 4 ## Use of this source code is governed by a BSD-style license |
5 ## that can be found in the LICENSE file in the root of the source | 5 ## that can be found in the LICENSE file in the root of the source |
6 ## tree. An additional intellectual property rights grant can be found | 6 ## tree. An additional intellectual property rights grant can be found |
7 ## in the file PATENTS. All contributing project authors may | 7 ## in the file PATENTS. All contributing project authors may |
8 ## be found in the AUTHORS file in the root of the source tree. | 8 ## be found in the AUTHORS file in the root of the source tree. |
9 ## | 9 ## |
10 | 10 |
11 LIBYUV_SRCS += third_party/libyuv/include/libyuv/basic_types.h \ | 11 LIBYUV_SRCS += third_party/libyuv/include/libyuv/basic_types.h \ |
12 third_party/libyuv/include/libyuv/cpu_id.h \ | 12 third_party/libyuv/include/libyuv/cpu_id.h \ |
13 third_party/libyuv/include/libyuv/scale.h \ | 13 third_party/libyuv/include/libyuv/scale.h \ |
14 third_party/libyuv/source/row.h \ | 14 third_party/libyuv/source/row.h \ |
15 third_party/libyuv/source/scale.c \ | 15 third_party/libyuv/source/scale.c \ |
16 third_party/libyuv/source/cpu_id.c | 16 third_party/libyuv/source/cpu_id.c |
17 | 17 |
18 # List of examples to build. UTILS are files that are taken from the source | 18 # List of examples to build. UTILS are tools meant for distribution |
19 # tree directly, and GEN_EXAMPLES are files that are created from the | 19 # while EXAMPLES demonstrate specific portions of the API. |
20 # examples folder. | |
21 UTILS-$(CONFIG_DECODERS) += vpxdec.c | 20 UTILS-$(CONFIG_DECODERS) += vpxdec.c |
22 vpxdec.SRCS += md5_utils.c md5_utils.h | 21 vpxdec.SRCS += md5_utils.c md5_utils.h |
23 vpxdec.SRCS += vpx_ports/vpx_timer.h | 22 vpxdec.SRCS += vpx_ports/vpx_timer.h |
24 vpxdec.SRCS += vpx/vpx_integer.h | 23 vpxdec.SRCS += vpx/vpx_integer.h |
25 vpxdec.SRCS += args.c args.h | 24 vpxdec.SRCS += args.c args.h |
26 vpxdec.SRCS += ivfdec.c ivfdec.h | 25 vpxdec.SRCS += ivfdec.c ivfdec.h |
27 vpxdec.SRCS += tools_common.c tools_common.h | 26 vpxdec.SRCS += tools_common.c tools_common.h |
28 vpxdec.SRCS += webmdec.c webmdec.h | 27 vpxdec.SRCS += webmdec.c webmdec.h |
29 vpxdec.SRCS += y4menc.c y4menc.h | 28 vpxdec.SRCS += y4menc.c y4menc.h |
30 vpxdec.SRCS += nestegg/halloc/halloc.h | 29 vpxdec.SRCS += nestegg/halloc/halloc.h |
31 vpxdec.SRCS += nestegg/halloc/src/align.h | 30 vpxdec.SRCS += nestegg/halloc/src/align.h |
32 vpxdec.SRCS += nestegg/halloc/src/halloc.c | 31 vpxdec.SRCS += nestegg/halloc/src/halloc.c |
33 vpxdec.SRCS += nestegg/halloc/src/hlist.h | 32 vpxdec.SRCS += nestegg/halloc/src/hlist.h |
34 vpxdec.SRCS += nestegg/halloc/src/macros.h | 33 vpxdec.SRCS += nestegg/halloc/src/macros.h |
35 vpxdec.SRCS += nestegg/include/nestegg/nestegg.h | 34 vpxdec.SRCS += nestegg/include/nestegg/nestegg.h |
36 vpxdec.SRCS += nestegg/src/nestegg.c | 35 vpxdec.SRCS += nestegg/src/nestegg.c |
37 vpxdec.SRCS += $(LIBYUV_SRCS) | 36 vpxdec.SRCS += $(LIBYUV_SRCS) |
38 vpxdec.GUID = BA5FE66F-38DD-E034-F542-B1578C5FB950 | 37 vpxdec.GUID = BA5FE66F-38DD-E034-F542-B1578C5FB950 |
39 vpxdec.DESCRIPTION = Full featured decoder | 38 vpxdec.DESCRIPTION = Full featured decoder |
40 UTILS-$(CONFIG_ENCODERS) += vpxenc.c | 39 UTILS-$(CONFIG_ENCODERS) += vpxenc.c |
41 vpxenc.SRCS += args.c args.h y4minput.c y4minput.h vpxenc.h | 40 vpxenc.SRCS += args.c args.h y4minput.c y4minput.h vpxenc.h |
42 vpxenc.SRCS += ivfdec.c ivfdec.h | 41 vpxenc.SRCS += ivfdec.c ivfdec.h |
43 vpxenc.SRCS += ivfenc.c ivfenc.h | 42 vpxenc.SRCS += ivfenc.c ivfenc.h |
| 43 vpxenc.SRCS += rate_hist.c rate_hist.h |
44 vpxenc.SRCS += tools_common.c tools_common.h | 44 vpxenc.SRCS += tools_common.c tools_common.h |
45 vpxenc.SRCS += warnings.c warnings.h | 45 vpxenc.SRCS += warnings.c warnings.h |
46 vpxenc.SRCS += webmenc.c webmenc.h | 46 vpxenc.SRCS += webmenc.c webmenc.h |
47 vpxenc.SRCS += vpx_ports/mem_ops.h | 47 vpxenc.SRCS += vpx_ports/mem_ops.h |
48 vpxenc.SRCS += vpx_ports/mem_ops_aligned.h | 48 vpxenc.SRCS += vpx_ports/mem_ops_aligned.h |
49 vpxenc.SRCS += vpx_ports/vpx_timer.h | 49 vpxenc.SRCS += vpx_ports/vpx_timer.h |
50 vpxenc.SRCS += vpxstats.c vpxstats.h | 50 vpxenc.SRCS += vpxstats.c vpxstats.h |
51 vpxenc.SRCS += third_party/libmkv/EbmlIDs.h | 51 vpxenc.SRCS += third_party/libmkv/EbmlIDs.h |
52 vpxenc.SRCS += third_party/libmkv/EbmlWriter.c | 52 vpxenc.SRCS += third_party/libmkv/EbmlWriter.c |
53 vpxenc.SRCS += third_party/libmkv/EbmlWriter.h | 53 vpxenc.SRCS += third_party/libmkv/EbmlWriter.h |
54 vpxenc.SRCS += $(LIBYUV_SRCS) | 54 vpxenc.SRCS += $(LIBYUV_SRCS) |
55 vpxenc.GUID = 548DEC74-7A15-4B2B-AFC3-AA102E7C25C1 | 55 vpxenc.GUID = 548DEC74-7A15-4B2B-AFC3-AA102E7C25C1 |
56 vpxenc.DESCRIPTION = Full featured encoder | 56 vpxenc.DESCRIPTION = Full featured encoder |
57 UTILS-$(CONFIG_VP8_ENCODER) += vp8_scalable_patterns.c | |
58 vp8_scalable_patterns.GUID = 0D6A210B-F482-4D6F-8570-4A9C01ACC88C | |
59 vp8_scalable_patterns.DESCRIPTION = Temporal Scalability Encoder | |
60 UTILS-$(CONFIG_VP9_ENCODER) += vp9_spatial_scalable_encoder.c | 57 UTILS-$(CONFIG_VP9_ENCODER) += vp9_spatial_scalable_encoder.c |
61 vp9_spatial_scalable_encoder.SRCS += args.c args.h | 58 vp9_spatial_scalable_encoder.SRCS += args.c args.h |
62 vp9_spatial_scalable_encoder.SRCS += ivfenc.c ivfenc.h | 59 vp9_spatial_scalable_encoder.SRCS += ivfenc.c ivfenc.h |
63 vp9_spatial_scalable_encoder.SRCS += tools_common.c tools_common.h | 60 vp9_spatial_scalable_encoder.SRCS += tools_common.c tools_common.h |
| 61 vp9_spatial_scalable_encoder.SRCS += video_common.h |
| 62 vp9_spatial_scalable_encoder.SRCS += video_writer.h video_writer.c |
64 vp9_spatial_scalable_encoder.GUID = 4A38598D-627D-4505-9C7B-D4020C84100D | 63 vp9_spatial_scalable_encoder.GUID = 4A38598D-627D-4505-9C7B-D4020C84100D |
65 vp9_spatial_scalable_encoder.DESCRIPTION = Spatial Scalable Encoder | 64 vp9_spatial_scalable_encoder.DESCRIPTION = Spatial Scalable Encoder |
66 | 65 |
67 ifeq ($(CONFIG_SHARED),no) | 66 ifeq ($(CONFIG_SHARED),no) |
68 UTILS-$(CONFIG_VP9_ENCODER) += resize_util.c | 67 UTILS-$(CONFIG_VP9_ENCODER) += resize_util.c |
69 endif | 68 endif |
70 | 69 |
71 # XMA example disabled for now, not used in VP8 | 70 # XMA example disabled for now, not used in VP8 |
72 #UTILS-$(CONFIG_DECODERS) += example_xma.c | 71 #UTILS-$(CONFIG_DECODERS) += example_xma.c |
73 #example_xma.GUID = A955FC4A-73F1-44F7-135E-30D84D32F022 | 72 #example_xma.GUID = A955FC4A-73F1-44F7-135E-30D84D32F022 |
74 #example_xma.DESCRIPTION = External Memory Allocation mode usage | 73 #example_xma.DESCRIPTION = External Memory Allocation mode usage |
75 | 74 |
76 GEN_EXAMPLES-$(CONFIG_VP8_DECODER) += simple_decoder.c | 75 EXAMPLES-$(CONFIG_ENCODERS) += vpx_temporal_scalable_patterns.c |
77 simple_decoder.GUID = D3BBF1E9-2427-450D-BBFF-B2843C1D44CC | 76 vpx_temporal_scalable_patterns.SRCS += ivfenc.c ivfenc.h |
| 77 vpx_temporal_scalable_patterns.SRCS += tools_common.c tools_common.h |
| 78 vpx_temporal_scalable_patterns.SRCS += video_common.h |
| 79 vpx_temporal_scalable_patterns.SRCS += video_writer.h video_writer.c |
| 80 vpx_temporal_scalable_patterns.GUID = B18C08F2-A439-4502-A78E-849BE3D60947 |
| 81 vpx_temporal_scalable_patterns.DESCRIPTION = Temporal Scalability Encoder |
| 82 EXAMPLES-$(CONFIG_VP8_DECODER) += simple_decoder.c |
| 83 simple_decoder.GUID = D3BBF1E9-2427-450D-BBFF-B2843C1D44CC |
78 simple_decoder.SRCS += ivfdec.h ivfdec.c | 84 simple_decoder.SRCS += ivfdec.h ivfdec.c |
79 simple_decoder.SRCS += tools_common.h tools_common.c | 85 simple_decoder.SRCS += tools_common.h tools_common.c |
80 simple_decoder.DESCRIPTION = Simplified decoder loop | 86 simple_decoder.SRCS += video_common.h |
81 GEN_EXAMPLES-$(CONFIG_VP8_DECODER) += postproc.c | 87 simple_decoder.SRCS += video_reader.h video_reader.c |
82 postproc.GUID = 65E33355-F35E-4088-884D-3FD4905881D7 | 88 simple_decoder.DESCRIPTION = Simplified decoder loop |
83 postproc.DESCRIPTION = Decoder postprocessor control | 89 EXAMPLES-$(CONFIG_VP8_DECODER) += postproc.c |
84 GEN_EXAMPLES-$(CONFIG_VP8_DECODER) += decode_to_md5.c | 90 postproc.SRCS += ivfdec.h ivfdec.c |
| 91 postproc.SRCS += tools_common.h tools_common.c |
| 92 postproc.SRCS += video_common.h |
| 93 postproc.SRCS += video_reader.h video_reader.c |
| 94 postproc.GUID = 65E33355-F35E-4088-884D-3FD4905881D7 |
| 95 postproc.DESCRIPTION = Decoder postprocessor control |
| 96 EXAMPLES-$(CONFIG_VP8_DECODER) += decode_to_md5.c |
85 decode_to_md5.SRCS += md5_utils.h md5_utils.c | 97 decode_to_md5.SRCS += md5_utils.h md5_utils.c |
86 decode_to_md5.SRCS += ivfdec.h ivfdec.c | 98 decode_to_md5.SRCS += ivfdec.h ivfdec.c |
87 decode_to_md5.SRCS += tools_common.h tools_common.c | 99 decode_to_md5.SRCS += tools_common.h tools_common.c |
88 decode_to_md5.GUID = 59120B9B-2735-4BFE-B022-146CA340FE42 | 100 decode_to_md5.SRCS += video_common.h |
89 decode_to_md5.DESCRIPTION = Frame by frame MD5 checksum | 101 decode_to_md5.SRCS += video_reader.h video_reader.c |
90 | 102 decode_to_md5.GUID = 59120B9B-2735-4BFE-B022-146CA340FE42 |
91 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += simple_encoder.c | 103 decode_to_md5.DESCRIPTION = Frame by frame MD5 checksum |
| 104 EXAMPLES-$(CONFIG_VP8_ENCODER) += simple_encoder.c |
| 105 simple_encoder.SRCS += ivfenc.h ivfenc.c |
| 106 simple_encoder.SRCS += tools_common.h tools_common.c |
| 107 simple_encoder.SRCS += video_common.h |
| 108 simple_encoder.SRCS += video_writer.h video_writer.c |
92 simple_encoder.GUID = 4607D299-8A71-4D2C-9B1D-071899B6FBFD | 109 simple_encoder.GUID = 4607D299-8A71-4D2C-9B1D-071899B6FBFD |
93 simple_encoder.DESCRIPTION = Simplified encoder loop | 110 simple_encoder.DESCRIPTION = Simplified encoder loop |
94 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += twopass_encoder.c | 111 EXAMPLES-$(CONFIG_VP8_ENCODER) += twopass_encoder.c |
| 112 twopass_encoder.SRCS += ivfenc.h ivfenc.c |
| 113 twopass_encoder.SRCS += tools_common.h tools_common.c |
| 114 twopass_encoder.SRCS += video_common.h |
| 115 twopass_encoder.SRCS += video_writer.h video_writer.c |
95 twopass_encoder.GUID = 73494FA6-4AF9-4763-8FBB-265C92402FD8 | 116 twopass_encoder.GUID = 73494FA6-4AF9-4763-8FBB-265C92402FD8 |
96 twopass_encoder.DESCRIPTION = Two-pass encoder loop | 117 twopass_encoder.DESCRIPTION = Two-pass encoder loop |
97 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += force_keyframe.c | 118 EXAMPLES-$(CONFIG_VP8_ENCODER) += force_keyframe.c |
98 force_keyframe.GUID = 3C67CADF-029F-4C86-81F5-D6D4F51177F0 | 119 force_keyframe.GUID = 3C67CADF-029F-4C86-81F5-D6D4F51177F0 |
99 force_keyframe.DESCRIPTION = Force generation of keyframes | 120 force_keyframe.DESCRIPTION = Force generation of keyframes |
100 ifeq ($(CONFIG_DECODERS),yes) | 121 ifeq ($(CONFIG_DECODERS),yes) |
101 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += decode_with_drops.c | 122 EXAMPLES-$(CONFIG_VP8_ENCODER) += decode_with_drops.c |
| 123 decode_with_drops.SRCS += ivfdec.h ivfdec.c |
| 124 decode_with_drops.SRCS += tools_common.h tools_common.c |
| 125 decode_with_drops.SRCS += video_common.h |
| 126 decode_with_drops.SRCS += video_reader.h video_reader.c |
102 endif | 127 endif |
103 decode_with_drops.GUID = CE5C53C4-8DDA-438A-86ED-0DDD3CDB8D26 | 128 decode_with_drops.GUID = CE5C53C4-8DDA-438A-86ED-0DDD3CDB8D26 |
104 decode_with_drops.DESCRIPTION = Drops frames while decoding | 129 decode_with_drops.DESCRIPTION = Drops frames while decoding |
105 ifeq ($(CONFIG_VP8_DECODER),yes) | 130 ifeq ($(CONFIG_VP8_DECODER),yes) |
106 GEN_EXAMPLES-$(CONFIG_ERROR_CONCEALMENT) += decode_with_partial_drops.c | 131 EXAMPLES-$(CONFIG_ERROR_CONCEALMENT) += decode_with_partial_drops.c |
107 endif | 132 endif |
108 decode_with_partial_drops.GUID = 61C2D026-5754-46AC-916F-1343ECC5537E | 133 decode_with_partial_drops.GUID = 61C2D026-5754-46AC-916F-1343ECC5537E |
109 decode_with_partial_drops.DESCRIPTION = Drops parts of frames while decoding | 134 decode_with_partial_drops.DESCRIPTION = Drops parts of frames while decoding |
110 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += error_resilient.c | 135 EXAMPLES-$(CONFIG_VP8_ENCODER) += error_resilient.c |
111 error_resilient.GUID = DF5837B9-4145-4F92-A031-44E4F832E00C | 136 error_resilient.GUID = DF5837B9-4145-4F92-A031-44E4F832E00C |
112 error_resilient.DESCRIPTION = Error Resiliency Feature | 137 error_resilient.DESCRIPTION = Error Resiliency Feature |
113 | 138 |
114 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += vp8_set_maps.c | 139 EXAMPLES-$(CONFIG_VP8_ENCODER) += vp8_set_maps.c |
115 vp8_set_maps.GUID = ECB2D24D-98B8-4015-A465-A4AF3DCC145F | 140 vp8_set_maps.GUID = ECB2D24D-98B8-4015-A465-A4AF3DCC145F |
116 vp8_set_maps.DESCRIPTION = VP8 set active and ROI maps | 141 vp8_set_maps.DESCRIPTION = VP8 set active and ROI maps |
117 GEN_EXAMPLES-$(CONFIG_VP8_ENCODER) += vp8cx_set_ref.c | 142 EXAMPLES-$(CONFIG_VP8_ENCODER) += vp8cx_set_ref.c |
118 vp8cx_set_ref.GUID = C5E31F7F-96F6-48BD-BD3E-10EBF6E8057A | 143 vp8cx_set_ref.GUID = C5E31F7F-96F6-48BD-BD3E-10EBF6E8057A |
119 vp8cx_set_ref.DESCRIPTION = VP8 set encoder reference frame | 144 vp8cx_set_ref.DESCRIPTION = VP8 set encoder reference frame |
120 | 145 |
121 | 146 |
122 ifeq ($(CONFIG_MULTI_RES_ENCODING),yes) | 147 ifeq ($(CONFIG_MULTI_RES_ENCODING),yes) |
123 GEN_EXAMPLES-$(CONFIG_VP8_DECODER) += vp8_multi_resolution_encoder.c | 148 EXAMPLES-$(CONFIG_VP8_DECODER) += vp8_multi_resolution_encoder.c |
124 vp8_multi_resolution_encoder.SRCS += $(LIBYUV_SRCS) | 149 vp8_multi_resolution_encoder.SRCS += $(LIBYUV_SRCS) |
125 vp8_multi_resolution_encoder.GUID = 04f8738e-63c8-423b-90fa-7c2703a374de | 150 vp8_multi_resolution_encoder.GUID = 04f8738e-63c8-423b-90fa-7c2703a374de |
126 vp8_multi_resolution_encoder.DESCRIPTION = VP8 Multiple-resolution Encoding | 151 vp8_multi_resolution_encoder.DESCRIPTION = VP8 Multiple-resolution Encoding |
127 endif | 152 endif |
128 | 153 |
129 # Handle extra library flags depending on codec configuration | 154 # Handle extra library flags depending on codec configuration |
130 | 155 |
131 # We should not link to math library (libm) on RVCT | 156 # We should not link to math library (libm) on RVCT |
132 # when building for bare-metal targets | 157 # when building for bare-metal targets |
133 ifeq ($(CONFIG_OS_SUPPORT), yes) | 158 ifeq ($(CONFIG_OS_SUPPORT), yes) |
(...skipping 25 matching lines...) Expand all Loading... |
159 INC_PATH-$(CONFIG_VP9_ENCODER) += $(SRC_PATH_BARE)/vp9 | 184 INC_PATH-$(CONFIG_VP9_ENCODER) += $(SRC_PATH_BARE)/vp9 |
160 LIB_PATH := $(call enabled,LIB_PATH) | 185 LIB_PATH := $(call enabled,LIB_PATH) |
161 INC_PATH := $(call enabled,INC_PATH) | 186 INC_PATH := $(call enabled,INC_PATH) |
162 endif | 187 endif |
163 INTERNAL_CFLAGS = $(addprefix -I,$(INC_PATH)) | 188 INTERNAL_CFLAGS = $(addprefix -I,$(INC_PATH)) |
164 INTERNAL_LDFLAGS += $(addprefix -L,$(LIB_PATH)) | 189 INTERNAL_LDFLAGS += $(addprefix -L,$(LIB_PATH)) |
165 | 190 |
166 | 191 |
167 # Expand list of selected examples to build (as specified above) | 192 # Expand list of selected examples to build (as specified above) |
168 UTILS = $(call enabled,UTILS) | 193 UTILS = $(call enabled,UTILS) |
169 GEN_EXAMPLES = $(call enabled,GEN_EXAMPLES) | 194 EXAMPLES = $(addprefix examples/,$(call enabled,EXAMPLES)) |
170 ALL_EXAMPLES = $(UTILS) $(GEN_EXAMPLES) | 195 ALL_EXAMPLES = $(UTILS) $(EXAMPLES) |
171 UTIL_SRCS = $(foreach ex,$(UTILS),$($(ex:.c=).SRCS)) | 196 UTIL_SRCS = $(foreach ex,$(UTILS),$($(ex:.c=).SRCS)) |
172 ALL_SRCS = $(foreach ex,$(ALL_EXAMPLES),$($(ex:.c=).SRCS)) | 197 ALL_SRCS = $(foreach ex,$(ALL_EXAMPLES),$($(notdir $(ex:.c=)).SRCS)) |
173 CODEC_EXTRA_LIBS=$(sort $(call enabled,CODEC_EXTRA_LIBS)) | 198 CODEC_EXTRA_LIBS=$(sort $(call enabled,CODEC_EXTRA_LIBS)) |
174 | 199 |
175 | 200 |
176 # Expand all example sources into a variable containing all sources | 201 # Expand all example sources into a variable containing all sources |
177 # for that example (not just them main one specified in UTILS/GEN_EXAMPLES) | 202 # for that example (not just them main one specified in UTILS/EXAMPLES) |
178 # and add this file to the list (for MSVS workspace generation) | 203 # and add this file to the list (for MSVS workspace generation) |
179 $(foreach ex,$(ALL_EXAMPLES),$(eval $(ex:.c=).SRCS += $(ex) examples.mk)) | 204 $(foreach ex,$(ALL_EXAMPLES),$(eval $(notdir $(ex:.c=)).SRCS += $(ex) examples.m
k)) |
180 | 205 |
181 | 206 |
182 # If this is a universal (fat) binary, then all the subarchitectures have | 207 # If this is a universal (fat) binary, then all the subarchitectures have |
183 # already been built and our job is to stitch them together. The | 208 # already been built and our job is to stitch them together. The |
184 # BUILD_OBJS variable indicates whether we should be building | 209 # BUILD_OBJS variable indicates whether we should be building |
185 # (compiling, linking) the library. The LIPO_OBJS variable indicates | 210 # (compiling, linking) the library. The LIPO_OBJS variable indicates |
186 # that we're stitching. | 211 # that we're stitching. |
187 $(eval $(if $(filter universal%,$(TOOLCHAIN)),LIPO_OBJS,BUILD_OBJS):=yes) | 212 $(eval $(if $(filter universal%,$(TOOLCHAIN)),LIPO_OBJS,BUILD_OBJS):=yes) |
188 | 213 |
189 | 214 |
(...skipping 16 matching lines...) Expand all Loading... |
206 $(if $(BUILD_OBJS),$(eval $(bin):\ | 231 $(if $(BUILD_OBJS),$(eval $(bin):\ |
207 $(LIB_PATH)/lib$(CODEC_LIB)$(CODEC_LIB_SUF)))\ | 232 $(LIB_PATH)/lib$(CODEC_LIB)$(CODEC_LIB_SUF)))\ |
208 $(if $(BUILD_OBJS),$(eval $(call linker_template,$(bin),\ | 233 $(if $(BUILD_OBJS),$(eval $(call linker_template,$(bin),\ |
209 $(call objs,$($(notdir $(bin:$(EXE_SFX)=)).SRCS)) \ | 234 $(call objs,$($(notdir $(bin:$(EXE_SFX)=)).SRCS)) \ |
210 -l$(CODEC_LIB) $(addprefix -l,$(CODEC_EXTRA_LIBS))\ | 235 -l$(CODEC_LIB) $(addprefix -l,$(CODEC_EXTRA_LIBS))\ |
211 )))\ | 236 )))\ |
212 $(if $(LIPO_OBJS),$(eval $(call lipo_bin_template,$(bin))))\ | 237 $(if $(LIPO_OBJS),$(eval $(call lipo_bin_template,$(bin))))\ |
213 ) | 238 ) |
214 | 239 |
215 | 240 |
216 # Rules to generate the GEN_EXAMPLES sources | |
217 .PRECIOUS: %.c | |
218 CLEAN-OBJS += $(GEN_EXAMPLES) | |
219 %.c: examples/%.c | |
220 @echo " [EXAMPLE] $@" | |
221 @cp $< $@ | |
222 | |
223 | |
224 # The following pairs define a mapping of locations in the distribution | 241 # The following pairs define a mapping of locations in the distribution |
225 # tree to locations in the source/build trees. | 242 # tree to locations in the source/build trees. |
226 INSTALL_MAPS += src/%.c %.c | 243 INSTALL_MAPS += src/%.c %.c |
227 INSTALL_MAPS += src/% $(SRC_PATH_BARE)/% | 244 INSTALL_MAPS += src/% $(SRC_PATH_BARE)/% |
228 INSTALL_MAPS += bin/% % | 245 INSTALL_MAPS += bin/% % |
229 INSTALL_MAPS += % % | 246 INSTALL_MAPS += % % |
230 | 247 |
231 | 248 |
232 # Set up additional MSVS environment | 249 # Set up additional MSVS environment |
233 ifeq ($(CONFIG_MSVS),yes) | 250 ifeq ($(CONFIG_MSVS),yes) |
(...skipping 17 matching lines...) Expand all Loading... |
251 $$(GEN_VCPROJ)\ | 268 $$(GEN_VCPROJ)\ |
252 --exe\ | 269 --exe\ |
253 --target=$$(TOOLCHAIN)\ | 270 --target=$$(TOOLCHAIN)\ |
254 --name=$$(@:.$(VCPROJ_SFX)=)\ | 271 --name=$$(@:.$(VCPROJ_SFX)=)\ |
255 --ver=$$(CONFIG_VS_VERSION)\ | 272 --ver=$$(CONFIG_VS_VERSION)\ |
256 --proj-guid=$$($$(@:.$(VCPROJ_SFX)=).GUID)\ | 273 --proj-guid=$$($$(@:.$(VCPROJ_SFX)=).GUID)\ |
257 $$(if $$(CONFIG_STATIC_MSVCRT),--static-crt) \ | 274 $$(if $$(CONFIG_STATIC_MSVCRT),--static-crt) \ |
258 --out=$$@ $$(INTERNAL_CFLAGS) $$(CFLAGS) \ | 275 --out=$$@ $$(INTERNAL_CFLAGS) $$(CFLAGS) \ |
259 $$(INTERNAL_LDFLAGS) $$(LDFLAGS) -l$$(CODEC_LIB) $$^ | 276 $$(INTERNAL_LDFLAGS) $$(LDFLAGS) -l$$(CODEC_LIB) $$^ |
260 endef | 277 endef |
261 PROJECTS-$(CONFIG_MSVS) += $(ALL_EXAMPLES:.c=.$(VCPROJ_SFX)) | 278 ALL_EXAMPLES_BASENAME := $(notdir $(ALL_EXAMPLES)) |
| 279 PROJECTS-$(CONFIG_MSVS) += $(ALL_EXAMPLES_BASENAME:.c=.$(VCPROJ_SFX)) |
262 INSTALL-BINS-$(CONFIG_MSVS) += $(foreach p,$(VS_PLATFORMS),\ | 280 INSTALL-BINS-$(CONFIG_MSVS) += $(foreach p,$(VS_PLATFORMS),\ |
263 $(addprefix bin/$(p)/,$(ALL_EXAMPLES:.c=.exe))) | 281 $(addprefix bin/$(p)/,$(ALL_EXAMPLES_BASENAME:.c=
.exe))) |
264 $(foreach proj,$(call enabled,PROJECTS),\ | 282 $(foreach proj,$(call enabled,PROJECTS),\ |
265 $(eval $(call vcproj_template,$(proj)))) | 283 $(eval $(call vcproj_template,$(proj)))) |
OLD | NEW |