Mercurial > mxe-octave
diff src/mesa.mk @ 4488:8f9bee27223f
optionally build mesa OpenGL library
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 05 Oct 2017 10:44:53 -0400 |
parents | src/osmesa.mk@7d6f1fd0d672 |
children | e7d902eeefda |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/mesa.mk Thu Oct 05 10:44:53 2017 -0400 @@ -0,0 +1,75 @@ +# This file is part of MXE Octave. +# See index.html for further information. + +PKG := mesa +$(PKG)_VERSION := 17.2.1 +$(PKG)_CHECKSUM := 7429e74a0ef12ea9d60b41b2b852898b3da0b238 +$(PKG)_SUBDIR := mesa-$($(PKG)_VERSION) +$(PKG)_FILE := mesa-$($(PKG)_VERSION).tar.xz +$(PKG)_URL := ftp://ftp.freedesktop.org/pub/mesa/$($(PKG)_FILE) +$(PKG)_DEPS := build-mako zlib +ifeq ($(MXE_WINDOWS_BUILD),yes) + ifeq ($(USE_SYSTEM_OPENGL),no) + $(PKG)_CONFIGURE_OPENGL_OPTIONS := libgl-gdi + endif +else + ifeq ($(USE_SYSTEM_OPENGL),yes) + $(PKG)_CONFIGURE_OPENGL_OPTIONS := \ + --disable-opengl --disable-dri --disable-glx \ + --with-gallium-drivers="" --with-dri-drivers="" \ + --with-platforms="" + else + $(PKG)_CONFIGURE_OPENGL_OPTIONS := \ + --enable-opengl --enable-dri --enable-glx="dri" \ + --with-gallium-drivers="" --with-dri-drivers="swrast" \ + --with-platforms="x11" + ifeq ($(USE_SYSTEM_X11_LIBS),no) + $(PKG)_DEPS += dri2proto glproto libdrm libxshmfence x11 xdamage xext xfixes + endif + endif +endif + +define $(PKG)_UPDATE + echo 'Warning: Updates are temporarily disabled for package $(PKG).' >&2; + echo $($(PKG)_VERSION) +endef + +ifeq ($(MXE_WINDOWS_BUILD),yes) + ifeq ($(ENABLE_WINDOWS_64),yes) + $(PKG)_MACHINE := x86_64 + else + $(PKG)_MACHINE := x86 + endif + define $(PKG)_BUILD + cd '$(1)' && scons platform=windows toolchain=crossmingw machine=$($(PKG)_MACHINE) verbose=1 osmesa $($(PKG)_CONFIGURE_OPENGL_OPTIONS) + + ## Do the scons config files have useful install targets? + $(INSTALL) -d '$(3)$(HOST_INCDIR)/GL'; + for f in '$(1)/include/GL/*.h' ; do \ + $(INSTALL) -m 644 $$f '$(3)$(HOST_INCDIR)/GL'; \ + done + $(INSTALL) -d '$(3)$(HOST_BINDIR)'; + $(INSTALL) -m 755 '$(1)/build/windows-$($(PKG)_MACHINE)-debug/mesa/drivers/osmesa/osmesa.dll' '$(3)$(HOST_BINDIR)/osmesa.dll'; + $(INSTALL) -d '$(3)$(HOST_LIBDIR)'; + $(INSTALL) -m 644 '$(1)/build/windows-$($(PKG)_MACHINE)-debug/mesa/drivers/osmesa/libosmesa.a' '$(3)$(HOST_LIBDIR)/libOSMesa.a'; + endef +else + define $(PKG)_BUILD + mkdir '$(1)/.build' + cd '$(1)' && autoreconf -fi -I m4 + cd '$(1)/.build' && $($(PKG)_CONFIGURE_ENV) '$(1)/configure' \ + $(CONFIGURE_CPPFLAGS) $(CONFIGURE_LDFLAGS) \ + $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \ + --prefix='$(HOST_PREFIX)' \ + $($(PKG)_CONFIGURE_OPENGL_OPTIONS) \ + --enable-osmesa \ + --disable-gbm \ + --disable-egl \ + --disable-xvmc \ + --disable-llvm \ + --enable-texture-float \ + && $(CONFIGURE_POST_HOOK) + + $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install DESTDIR='$(3)' + endef +endif