annotate src/build-octave.mk @ 7207:9ed6500e56d3 default tip @

maint: Merge release to default.
author Markus Mützel <markus.muetzel@gmx.de>
date Fri, 17 May 2024 20:16:41 +0200
parents fe9c2aa80854
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5531
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
1 # This file is part of MXE.
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
2 # See index.html for further information.
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
3
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
4 ## This package is intended for building a minimal version of Octave that
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
5 ## runs on the build system. Some Octave Forge packages need Octave as a
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
6 ## build tool.
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
7 ## This version of Octave is built from the same tarball that is used for
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
8 ## cross-compiling. However, the native Octave is unavoidably different
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
9 ## from the Octave that is built for the target system. Packages must be
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
10 ## careful when relying on Octave for configuration settings. Wherever
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
11 ## possible, packages should try to not depend on Octave as a build tool
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
12 ## and should use alternatives instead (e.g., [target]-octave-config or
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
13 ## check the macros defined in octave-config.h).
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
14 ##
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
15 ## It is assumed that the necessary dependencies for a native build are
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
16 ## present on the build system.
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
17
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
18 PKG := build-octave
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
19 $(PKG)_IGNORE :=
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
20 $(PKG)_VERSION := $($(OCTAVE_TARGET)_VERSION)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
21 $(PKG)_CHECKSUM := $($(OCTAVE_TARGET)_CHECKSUM)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
22 $(PKG)_SUBDIR := $($(OCTAVE_TARGET)_SUBDIR)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
23 $(PKG)_FILE := $($(OCTAVE_TARGET)_FILE)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
24 $(PKG)_URL := $($(OCTAVE_TARGET)_URL)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
25 $(PKG)_DEPS := $(OCTAVE_TARGET)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
26
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
27 ## The following dependencies and some native build tools are necessary
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
28 ## on the build system:
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
29 # $(PKG)_DEPS := blas lapack pcre
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
30
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
31 define $(PKG)_UPDATE
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
32 echo 'Warning: Updates are disabled for package build-octave.' >&2;
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
33 echo $($(PKG)_VERSION)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
34 endef
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
35
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
36 $(PKG)_ENV_FLAGS := \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
37 PKG_CONFIG_PATH='$(BUILD_PKG_CONFIG_PATH)' \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
38 LD_LIBRARY_PATH='$(LD_LIBRARY_PATH)' \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
39 PATH='$(ENV_PATH)'
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
40
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
41 ifeq ($(ENABLE_64),yes)
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
42 $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
43 else
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
44 $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --disable-64
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
45 endif
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
46
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
47 define $(PKG)_BUILD
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
48 mkdir '$(1)/.build'
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
49 cd '$(1)/.build' && \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
50 $($(PKG)_ENV_FLAGS) '$(1)/configure' \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
51 --prefix=$(ROOT_PREFIX) \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
52 $($(PKG)_ENABLE_64_CONFIGURE_OPTIONS) \
5977
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
53 --disable-docs --disable-fftw-threads --disable-java --disable-openmp \
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
54 --disable-readline --without-amd --without-arpack --without-bz2 \
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
55 --without-camd --without-ccolamd --without-cholmod --without-colamd \
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
56 --without-curl --without-cxsparse --without-fftw3 --without-fftw3f \
5531
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
57 --without-fltk --without-fontconfig --without-framework-opengl \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
58 --without-freetype --without-glpk --without-hdf5 --without-klu \
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
59 --without-magick --without-opengl --without-openssl \
5977
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
60 --without-portaudio --without-qhull_r --without-qrupdate \
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
61 --without-qscintilla --without-qt --without-sndfile --without-spqr \
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
62 --without-suitesparseconfig --without-sundials_ida \
fe9c2aa80854 build-octave: Clean up configure switches for "minimal" build.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5730
diff changeset
63 --without-sundials_nvecserial --without-umfpack --without-x --without-z
5531
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
64
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
65 $($(PKG)_ENV_FLAGS) $(MAKE) -C '$(1)/.build' all -j '$(JOBS)'
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
66 $($(PKG)_ENV_FLAGS) $(MAKE) -C '$(1)/.build' install
eae508c12529 Add build rule for build-octave (bug #49503).
Markus Mützel <markus.muetzel@gmx.de>
parents:
diff changeset
67 endef