view src/vtk.mk @ 5531:eae508c12529

Add build rule for build-octave (bug #49503). * src/build-octave.mk: Add new build rule for build-octave which can be used for cross-building binary packages that depend on Octave as a build tool. * dist-files.mk: Add new file to list. * index.html: Add new package to list. * src/of-communications.mk, src/of-image.mk, src/of-mapping.mk, src/of-optiminterp.mk, src/of-sparsersb.mk, src/of-statistics.mk, src/of-windows.mk: Add optional dependency on build-octave. * configure.ac: Add new configure switch "--disable-system-octave" that is needed to build the build-octave package. * Makefile.in: Add variable "USE_SYSTEM_OCTAVE". Exclude build-octave from the default build tools and build it only if a package explicitly depends on it. Display warning about missing native Octave version only if necessary.
author Markus Mützel <markus.muetzel@gmx.de>
date Tue, 08 Sep 2020 23:04:38 +0200
parents 13be64f9f16d
children d862fd40cc42
line wrap: on
line source

# This file is part of MXE.
# See index.html for further information.

PKG             := vtk
$(PKG)_IGNORE   :=
$(PKG)_VERSION  := 5.8.0
$(PKG)_CHECKSUM := ece52f4fa92811fe927581e60ecb39a8a5f68cd9
$(PKG)_SUBDIR   := VTK
$(PKG)_FILE     := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_URL      := http://www.vtk.org/files/release/5.8/$($(PKG)_FILE)
$(PKG)_DEPS     := qt expat freetype jpeg libxml2 libpng tiff zlib libodbc++ postgresql

define $(PKG)_UPDATE
    $(WGET) -q -O- 'http://vtk.org/gitweb?p=VTK.git;a=tags' | \
    grep 'refs/tags/v[0-9.]*"' | \
    $(SED) 's,.*refs/tags/v\(.*\)".*,\1,g;' | \
    head -1
endef

define $(PKG)_BUILD

    # first we need a native build to create the compile tools
    mkdir '$(1)/native_build'
    cd '$(1)/native_build' && cmake \
        -DBUILD_TESTING=FALSE \
        -DOPENGL_INCLUDE_DIR='$(1)/Utilities/ParseOGLExt/headers' \
        -DVTK_USE_RENDERING=FALSE \
        ..

    # only the newly created CompileTools target need to be built
    $(MAKE) -C '$(1)/native_build' -j '$(JOBS)' VERBOSE=1 CompileTools

    # DirectX is detected on Mac OSX but requires a DX10 header - dxgi.h
    rm '$(1)/CMake/FindDirectX.cmake'

    # now for the cross compilation
    mkdir '$(1)/cross_build'
    cd '$(1)/cross_build' && cmake \
        -C '$(1)/TryRunResults.cmake'\
        -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)'\
        -DBUILD_TESTING=FALSE\
        -DVTKCompileTools_DIR='$(1)/native_build'\
        -DVTK_USE_SYSTEM_EXPAT=TRUE\
        -DVTK_USE_SYSTEM_FREETYPE=TRUE\
        -DVTK_USE_SYSTEM_JPEG=TRUE\
        -DVTK_USE_SYSTEM_LIBXML2=TRUE\
        -DVTK_USE_SYSTEM_PNG=TRUE\
        -DVTK_USE_SYSTEM_TIFF=TRUE\
        -DVTK_USE_SYSTEM_ZLIB=TRUE\
        -DVTK_USE_QT=TRUE\
        -DVTK_USE_POSTGRES=TRUE\
        -DVTK_USE_ODBC=TRUE\
        ..
    $(MAKE) -C '$(1)/cross_build' -j '$(JOBS)' install VERBOSE=1
endef