Blame view

buildroot/buildroot-2016.08.1/package/wine/wine.mk 8.69 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
  ################################################################################
  #
  # wine
  #
  ################################################################################
  
  WINE_VERSION = 1.8.3
  WINE_SOURCE = wine-$(WINE_VERSION).tar.bz2
  WINE_SITE = https://dl.winehq.org/wine/source/1.8
  WINE_LICENSE = LGPLv2.1+
  WINE_LICENSE_FILES = COPYING.LIB LICENSE
  WINE_DEPENDENCIES = host-bison host-flex host-wine
  
  # Wine needs its own directory structure and tools for cross compiling
  WINE_CONF_OPTS = \
  	--with-wine-tools=../host-wine-$(WINE_VERSION) \
  	--disable-tests \
  	--disable-win64 \
  	--without-capi \
  	--without-coreaudio \
  	--without-gettext \
  	--without-gettextpo \
  	--without-gphoto \
  	--without-gsm \
  	--without-hal \
  	--without-opencl \
  	--without-oss
  
  # Wine uses a wrapper around gcc, and uses the value of --host to
  # construct the filename of the gcc to call.  But for external
  # toolchains, the GNU_TARGET_NAME tuple that we construct from our
  # internal variables may differ from the actual gcc prefix for the
  # external toolchains. So, we have to override whatever the gcc
  # wrapper believes what the real gcc is named, and force the tuple of
  # the external toolchain, not the one we compute in GNU_TARGET_NAME.
  ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
  WINE_CONF_OPTS += TARGETFLAGS="-b $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))"
  endif
  
  ifeq ($(BR2_PACKAGE_ALSA_LIB)$(BR2_PACKAGE_ALSA_LIB_SEQ)$(BR2_PACKAGE_ALSA_LIB_RAWMIDI),yyy)
  WINE_CONF_OPTS += --with-alsa
  WINE_DEPENDENCIES += alsa-lib
  else
  WINE_CONF_OPTS += --without-alsa
  endif
  
  ifeq ($(BR2_PACKAGE_CUPS),y)
  WINE_CONF_OPTS += --with-cups
  WINE_DEPENDENCIES += cups
  WINE_CONF_ENV += CUPS_CONFIG=$(STAGING_DIR)/usr/bin/cups-config
  else
  WINE_CONF_OPTS += --without-cups
  endif
  
  ifeq ($(BR2_PACKAGE_DBUS),y)
  WINE_CONF_OPTS += --with-dbus
  WINE_DEPENDENCIES += dbus
  else
  WINE_CONF_OPTS += --without-dbus
  endif
  
  ifeq ($(BR2_PACKAGE_FONTCONFIG),y)
  WINE_CONF_OPTS += --with-fontconfig
  WINE_DEPENDENCIES += fontconfig
  else
  WINE_CONF_OPTS += --without-fontconfig
  endif
  
  # To support freetype in wine we also need freetype in host-wine for the cross compiling tools
  ifeq ($(BR2_PACKAGE_FREETYPE),y)
  WINE_CONF_OPTS += --with-freetype
  HOST_WINE_CONF_OPTS += --with-freetype
  WINE_DEPENDENCIES += freetype
  HOST_WINE_DEPENDENCIES += host-freetype
  WINE_CONF_ENV += FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config
  else
  WINE_CONF_OPTS += --without-freetype
  HOST_WINE_CONF_OPTS += --without-freetype
  endif
  
  ifeq ($(BR2_PACKAGE_GNUTLS),y)
  WINE_CONF_OPTS += --with-gnutls
  WINE_DEPENDENCIES += gnutls
  else
  WINE_CONF_OPTS += --without-gnutls
  endif
  
  ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE),y)
  WINE_CONF_OPTS += --with-gstreamer
  WINE_DEPENDENCIES += gst-plugins-base
  else
  WINE_CONF_OPTS += --without-gstreamer
  endif
  
  ifeq ($(BR2_PACKAGE_JPEG),y)
  WINE_CONF_OPTS += --with-jpeg
  WINE_DEPENDENCIES += jpeg
  else
  WINE_CONF_OPTS += --without-jpeg
  endif
  
  ifeq ($(BR2_PACKAGE_LCMS2),y)
  WINE_CONF_OPTS += --with-cms
  WINE_DEPENDENCIES += lcms2
  else
  WINE_CONF_OPTS += --without-cms
  endif
  
  ifeq ($(BR2_PACKAGE_HAS_LIBGL),y)
  WINE_CONF_OPTS += --with-opengl
  WINE_DEPENDENCIES += libgl
  else
  WINE_CONF_OPTS += --without-opengl
  endif
  
  ifeq ($(BR2_PACKAGE_LIBGLU),y)
  WINE_CONF_OPTS += --with-glu
  WINE_DEPENDENCIES += libglu
  else
  WINE_CONF_OPTS += --without-glu
  endif
  
  ifeq ($(BR2_PACKAGE_LIBPCAP),y)
  WINE_CONF_OPTS += --with-pcap
  WINE_DEPENDENCIES += libpcap
  else
  WINE_CONF_OPTS += --without-pcap
  endif
  
  ifeq ($(BR2_PACKAGE_LIBPNG),y)
  WINE_CONF_OPTS += --with-png
  WINE_DEPENDENCIES += libpng
  else
  WINE_CONF_OPTS += --without-png
  endif
  
  ifeq ($(BR2_PACKAGE_LIBV4L),y)
  WINE_CONF_OPTS += --with-v4l
  WINE_DEPENDENCIES += libv4l
  else
  WINE_CONF_OPTS += --without-v4l
  endif
  
  ifeq ($(BR2_PACKAGE_LIBXML2),y)
  WINE_CONF_OPTS += --with-xml
  WINE_DEPENDENCIES += libxml2
  WINE_CONF_ENV += XML2_CONFIG=$(STAGING_DIR)/usr/bin/xml2-config
  else
  WINE_CONF_OPTS += --without-xml
  endif
  
  ifeq ($(BR2_PACKAGE_LIBXSLT),y)
  WINE_CONF_OPTS += --with-xslt
  WINE_DEPENDENCIES += libxslt
  WINE_CONF_ENV += XSLT_CONFIG=$(STAGING_DIR)/usr/bin/xslt-config
  else
  WINE_CONF_OPTS += --without-xslt
  endif
  
  ifeq ($(BR2_PACKAGE_MPG123),y)
  WINE_CONF_OPTS += --with-mpg123
  WINE_DEPENDENCIES += mpg123
  else
  WINE_CONF_OPTS += --without-mpg123
  endif
  
  ifeq ($(BR2_PACKAGE_NCURSES),y)
  WINE_CONF_OPTS += --with-curses
  WINE_DEPENDENCIES += ncurses
  else
  WINE_CONF_OPTS += --without-curses
  endif
  
  ifeq ($(BR2_PACKAGE_OPENAL),y)
  WINE_CONF_OPTS += --with-openal
  WINE_DEPENDENCIES += openal
  else
  WINE_CONF_OPTS += --without-openal
  endif
  
  ifeq ($(BR2_PACKAGE_OPENLDAP),y)
  WINE_CONF_OPTS += --with-ldap
  WINE_DEPENDENCIES += openldap
  else
  WINE_CONF_OPTS += --without-ldap
  endif
  
  ifeq ($(BR2_PACKAGE_MESA3D_OSMESA),y)
  WINE_CONF_OPTS += --with-osmesa
  WINE_DEPENDENCIES += mesa3d
  else
  WINE_CONF_OPTS += --without-osmesa
  endif
  
  ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
  WINE_CONF_OPTS += --with-pulse
  WINE_DEPENDENCIES += pulseaudio
  else
  WINE_CONF_OPTS += --without-pulse
  endif
  
  ifeq ($(BR2_PACKAGE_SAMBA4),y)
  WINE_CONF_OPTS += --with-netapi
  WINE_DEPENDENCIES += samba4
  else
  WINE_CONF_OPTS += --without-netapi
  endif
  
  ifeq ($(BR2_PACKAGE_SANE_BACKENDS),y)
  WINE_CONF_OPTS += --with-sane
  WINE_DEPENDENCIES += sane-backends
  WINE_CONF_ENV += SANE_CONFIG=$(STAGING_DIR)/usr/bin/sane-config
  else
  WINE_CONF_OPTS += --without-sane
  endif
  
  ifeq ($(BR2_PACKAGE_TIFF),y)
  WINE_CONF_OPTS += --with-tiff
  WINE_DEPENDENCIES += tiff
  else
  WINE_CONF_OPTS += --without-tiff
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
  WINE_CONF_OPTS += --with-x
  WINE_DEPENDENCIES += xlib_libX11
  else
  WINE_CONF_OPTS += --without-x
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),y)
  WINE_CONF_OPTS += --with-xcomposite
  WINE_DEPENDENCIES += xlib_libXcomposite
  else
  WINE_CONF_OPTS += --without-xcomposite
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y)
  WINE_CONF_OPTS += --with-xcursor
  WINE_DEPENDENCIES += xlib_libXcursor
  else
  WINE_CONF_OPTS += --without-xcursor
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXEXT),y)
  WINE_CONF_OPTS += --with-xshape --with-xshm
  WINE_DEPENDENCIES += xlib_libXext
  else
  WINE_CONF_OPTS += --without-xshape --without-xshm
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y)
  WINE_CONF_OPTS += --with-xinput --with-xinput2
  WINE_DEPENDENCIES += xlib_libXi
  else
  WINE_CONF_OPTS += --without-xinput --without-xinput2
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y)
  WINE_CONF_OPTS += --with-xinerama
  WINE_DEPENDENCIES += xlib_libXinerama
  else
  WINE_CONF_OPTS += --without-xinerama
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y)
  WINE_CONF_OPTS += --with-xrandr
  WINE_DEPENDENCIES += xlib_libXrandr
  else
  WINE_CONF_OPTS += --without-xrandr
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXRENDER),y)
  WINE_CONF_OPTS += --with-xrender
  WINE_DEPENDENCIES += xlib_libXrender
  else
  WINE_CONF_OPTS += --without-xrender
  endif
  
  ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y)
  WINE_CONF_OPTS += --with-xxf86vm
  WINE_DEPENDENCIES += xlib_libXxf86vm
  else
  WINE_CONF_OPTS += --without-xxf86vm
  endif
  
  ifeq ($(BR2_PACKAGE_ZLIB),y)
  WINE_CONF_OPTS += --with-zlib
  WINE_DEPENDENCIES += zlib
  else
  WINE_CONF_OPTS += --without-zlib
  endif
  
  # host-gettext is essential for .po file support in host-wine wrc
  HOST_WINE_DEPENDENCIES += host-gettext
  HOST_WINE_CONF_OPTS += --with-gettext --with-gettextpo
  
  # Wine needs to enable 64-bit build tools on 64-bit host
  ifeq ($(HOSTARCH),x86_64)
  HOST_WINE_CONF_OPTS += --enable-win64
  endif
  
  # Wine only needs the host tools to be built, so cut-down the
  # build time by building just what we need.
  define HOST_WINE_BUILD_CMDS
  	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
  	  tools \
  	  tools/sfnt2fon \
  	  tools/widl \
  	  tools/winebuild \
  	  tools/winegcc \
  	  tools/wmc \
  	  tools/wrc
  endef
  
  # Wine only needs its host variant to be built, not that it is
  # installed, as it uses the tools from the build directory. But
  # we have no way in Buildroot to state that a host package should
  # not be installed. So, just provide an noop install command.
  define HOST_WINE_INSTALL_CMDS
  	:
  endef
  
  # We are focused on the cross compiling tools, disable everything else
  HOST_WINE_CONF_OPTS += \
  	--disable-tests \
  	--disable-win16 \
  	--without-alsa \
  	--without-capi \
  	--without-cms \
  	--without-coreaudio \
  	--without-cups \
  	--without-curses \
  	--without-dbus \
  	--without-fontconfig \
  	--without-gphoto \
  	--without-glu \
  	--without-gnutls \
  	--without-gsm \
  	--without-gstreamer \
  	--without-hal \
  	--without-jpeg \
  	--without-ldap \
  	--without-mpg123 \
  	--without-netapi \
  	--without-openal \
  	--without-opencl \
  	--without-opengl \
  	--without-osmesa \
  	--without-oss \
  	--without-pcap \
  	--without-pulse \
  	--without-png \
  	--without-sane \
  	--without-tiff \
  	--without-v4l \
  	--without-x \
  	--without-xcomposite \
  	--without-xcursor \
  	--without-xinerama \
  	--without-xinput \
  	--without-xinput2 \
  	--without-xml \
  	--without-xrandr \
  	--without-xrender \
  	--without-xshape \
  	--without-xshm \
  	--without-xslt \
  	--without-xxf86vm \
  	--without-zlib
  
  $(eval $(autotools-package))
  $(eval $(host-autotools-package))