OSDN Git Service

ENC: add const data/table for AVC encoder
[android-x86/hardware-intel-common-vaapi.git] / src / Makefile.am
1 # Copyright (c) 2007 Intel Corporation. All Rights Reserved.
2 #
3 # Permission is hereby granted, free of charge, to any person obtaining a
4 # copy of this software and associated documentation files (the
5 # "Software"), to deal in the Software without restriction, including
6 # without limitation the rights to use, copy, modify, merge, publish,
7 # distribute, sub license, and/or sell copies of the Software, and to
8 # permit persons to whom the Software is furnished to do so, subject to
9 # the following conditions:
10
11 # The above copyright notice and this permission notice (including the
12 # next paragraph) shall be included in all copies or substantial portions
13 # of the Software.
14
15 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
16 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
18 # IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
19 # ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
20 # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
21 # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
23 SUBDIRS         = shaders
24 DIST_SUBDIRS    = $(SUBDIRS)
25 EXTRA_DIST      =
26 BUILT_SOURCES   =
27
28 AM_CPPFLAGS = \
29         -DPTHREADS              \
30         $(DRM_CFLAGS)           \
31         $(LIBVA_DEPS_CFLAGS)    \
32         -DVA_DRIVERS_PATH="\"$(LIBVA_DRIVERS_PATH)\"" \
33         $(NULL)
34
35 driver_cflags = \
36         -Wall                   \
37         -fvisibility=hidden     \
38         $(NULL)
39
40 driver_ldflags = \
41         -avoid-version          \
42         -no-undefined           \
43         -Wl,--no-undefined      \
44         $(NULL)
45
46 driver_libs = \
47         -lpthread -lm -ldl      \
48         $(DRM_LIBS) -ldrm_intel \
49         $(NULL)
50
51 source_c = \
52         dso_utils.c             \
53         gen6_mfc.c              \
54         gen6_mfc_common.c       \
55         gen6_mfd.c              \
56         gen6_vme.c              \
57         gen7_vme.c              \
58         gen7_mfc.c              \
59         gen7_mfd.c              \
60         gen75_mfd.c             \
61         gen75_mfc.c             \
62         gen8_encoder_vp8.c      \
63         gen8_mfc.c              \
64         gen8_mfd.c              \
65         gen8_vme.c              \
66         gen9_encoder_vp8.c      \
67         gen9_vme.c              \
68         gen9_mfc.c              \
69         gen9_mfc_hevc.c         \
70         gen9_mfd.c              \
71         gen9_vdenc.c            \
72         gen75_picture_process.c \
73         gen75_vme.c             \
74         gen75_vpp_gpe.c         \
75         gen75_vpp_vebox.c       \
76         gen9_post_processing.c  \
77         i965_avc_bsd.c          \
78         i965_avc_hw_scoreboard.c\
79         i965_avc_ildb.c         \
80         i965_decoder_utils.c    \
81         i965_device_info.c      \
82         i965_drv_video.c        \
83         i965_encoder.c          \
84         i965_encoder_utils.c    \
85         i965_encoder_vp8.c      \
86         i965_media.c            \
87         i965_media_h264.c       \
88         i965_media_mpeg2.c      \
89         i965_gpe_utils.c        \
90         i965_post_processing.c  \
91         i965_yuv_coefs.c        \
92         gen8_post_processing.c  \
93         i965_render.c           \
94         i965_vpp_avs.c          \
95         gen8_render.c           \
96         gen9_render.c           \
97         intel_batchbuffer.c     \
98         intel_batchbuffer_dump.c\
99         intel_driver.c          \
100         intel_memman.c          \
101         object_heap.c           \
102         intel_media_common.c            \
103         vp8_probs.c             \
104         vp9_probs.c             \
105         vpx_quant.c             \
106         gen9_vp9_encoder_kernels.c      \
107         gen9_vp9_const_def.c      \
108         gen9_vp9_encoder.c      \
109         intel_common_vpp_internal.c           \
110         i965_encoder_const_def.c    \
111         gen9_avc_const_def.c    \
112         $(NULL)
113
114 source_h = \
115         dso_utils.h             \
116         gen6_mfc.h              \
117         gen6_mfd.h              \
118         gen6_vme.h              \
119         gen7_mfd.h              \
120         gen75_picture_process.h \
121         gen75_vpp_gpe.h         \
122         gen75_vpp_vebox.h       \
123         gen8_post_processing.h  \
124         gen9_mfd.h              \
125         gen9_mfc.h              \
126         gen9_vdenc.h            \
127         i965_avc_bsd.h          \
128         i965_avc_hw_scoreboard.h\
129         i965_avc_ildb.h         \
130         i965_decoder.h          \
131         i965_decoder_utils.h    \
132         i965_defines.h          \
133         i965_drv_video.h        \
134         i965_encoder.h          \
135         i965_encoder_utils.h    \
136         i965_encoder_vp8.h      \
137         i965_media.h            \
138         i965_media_h264.h       \
139         i965_media_mpeg2.h      \
140         i965_mutext.h           \
141         i965_gpe_utils.h        \
142         i965_pciids.h           \
143         i965_post_processing.h  \
144         i965_render.h           \
145         i965_structs.h          \
146         i965_vpp_avs.h          \
147         i965_yuv_coefs.h        \
148         intel_batchbuffer.h     \
149         intel_batchbuffer_dump.h\
150         intel_compiler.h        \
151         intel_driver.h          \
152         intel_media.h           \
153         intel_memman.h          \
154         intel_version.h         \
155         object_heap.h           \
156         vp8_probs.h             \
157         vp9_probs.h             \
158         vpx_quant.h             \
159         sysdeps.h               \
160         va_backend_compat.h     \
161         i965_fourcc.h           \
162         gen9_vp9_encoder.h           \
163         gen9_vp9_encapi.h           \
164         gen9_vp9_const_def.h      \
165         gen9_vp9_encoder_kernels.h           \
166         intel_gen_vppapi.h           \
167         intel_common_vpp_internal.h           \
168         i965_encoder_common.h        \
169         i965_encoder_api.h        \
170         gen9_avc_const_def.h      \
171         $(NULL)
172
173 # convenience library that can be linked by driver and tests
174 noinst_LTLIBRARIES              = libi965_drv_video.la
175 libi965_drv_video_la_CFLAGS     = $(driver_cflags)
176 libi965_drv_video_la_LDFLAGS    = $(driver_ldflags)
177 libi965_drv_video_la_LIBADD     = $(driver_libs)
178 libi965_drv_video_la_SOURCES    = $(source_c)
179
180 # driver module
181 i965_drv_video_la_LTLIBRARIES   = i965_drv_video.la
182 i965_drv_video_ladir            = $(LIBVA_DRIVERS_PATH)
183 i965_drv_video_la_CFLAGS        = $(driver_cflags)
184 i965_drv_video_la_LDFLAGS       = -module $(driver_ldflags)
185 i965_drv_video_la_LIBADD        = libi965_drv_video.la $(driver_libs)
186 i965_drv_video_la_SOURCES       =
187
188 noinst_HEADERS                  = $(source_h)
189
190 if USE_X11
191 source_c                        += i965_output_dri.c
192 source_h                        += i965_output_dri.h
193 endif
194
195 if USE_WAYLAND
196 source_c                        += i965_output_wayland.c
197 source_h                        += i965_output_wayland.h
198 source_h                        += $(protocol_source_h)
199 driver_cflags                   += $(WAYLAND_CFLAGS) $(WAYLAND_CLIENT_CFLAGS)
200 endif
201
202 # git version
203 VERSION_FILE                    = .VERSION
204 OLD_VERSION_FILE                = $(VERSION_FILE).old
205 NEW_VERSION_FILE                = $(VERSION_FILE).new
206 PKG_VERSION_FILE                = $(VERSION_FILE).pkg
207
208 intel_version.h: gen-version
209         $(AM_V_GEN)                                                      \
210         OV=`[ -f $(OLD_VERSION_FILE) ] && cat $(OLD_VERSION_FILE) || :`; \
211         NV=`cat $(NEW_VERSION_FILE)`;                                    \
212         if [ "$$OV" != "$$NV" -o ! -f intel_version.h ]; then            \
213                 cp -f $(NEW_VERSION_FILE) $(OLD_VERSION_FILE);           \
214                 $(SED) -e "s|\@INTEL_DRIVER_GIT_VERSION\@|$${NV}|"       \
215                         $(srcdir)/intel_version.h.in > intel_version.h;  \
216         fi
217
218 gen-version:
219         @echo $(VERSION) > $(NEW_VERSION_FILE)
220 if HAVE_GIT
221         @[ -d $(top_srcdir)/.git ] && \
222         (cd $(top_srcdir) && $(GIT) describe --tags) > $(NEW_VERSION_FILE) || :
223 endif
224         @[ -f $(srcdir)/$(PKG_VERSION_FILE) ] && \
225         cp -f $(srcdir)/$(PKG_VERSION_FILE) $(NEW_VERSION_FILE) || :
226
227 $(PKG_VERSION_FILE): $(NEW_VERSION_FILE)
228         @cp -f $< $@
229
230 BUILT_SOURCES   += intel_version.h
231 EXTRA_DIST      += Android.mk intel_version.h.in $(PKG_VERSION_FILE)
232
233 # Wayland protocol
234 protocol_source_h = wayland-drm-client-protocol.h
235 i965_output_wayland.c: $(protocol_source_h)
236 %-client-protocol.h : %.xml
237         $(AM_V_GEN)$(WAYLAND_SCANNER) client-header < $< > $@
238
239 EXTRA_DIST += \
240         wayland-drm.xml         \
241         $(NULL)
242
243 # Extra clean files so that maintainer-clean removes *everything*
244 MAINTAINERCLEANFILES = Makefile.in config.h.in