annotate src/gcc.mk @ 2997:4f9b72cf7ee7

allow native builds too
author John W. Eaton <jwe@octave.org>
date Tue, 28 May 2013 17:31:59 -0400
parents a9fa640c348c
children 100e618349f7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2333
f653602a0500 Rebrand to new project name MXE
Volker Grabsch <vog@notjusthosting.com>
parents: 2329
diff changeset
1 # This file is part of MXE.
2353
99516e73b368 Move doc/index.html -> index.html
Volker Grabsch <vog@notjusthosting.com>
parents: 2349
diff changeset
2 # See index.html for further information.
414
d2a6561bcb6d add a copyright notice and license to each source file
Volker Grabsch <vog@notjusthosting.com>
parents: 408
diff changeset
3
306
85ffa9259036 validate downloads using SHA-1 checksums
Volker Grabsch <vog@notjusthosting.com>
parents: 266
diff changeset
4 PKG := gcc
938
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
5 $(PKG)_IGNORE :=
2769
072676f75749 update package gcc
Mark Brand <mabrand@mabrand.nl>
parents: 2731
diff changeset
6 $(PKG)_CHECKSUM := a464ba0f26eef24c29bcd1e7489421117fb9ee35
504
0fd340b5a6a8 improved structure of the gcc-* packages
Volker Grabsch <vog@notjusthosting.com>
parents: 475
diff changeset
7 $(PKG)_SUBDIR := gcc-$($(PKG)_VERSION)
0fd340b5a6a8 improved structure of the gcc-* packages
Volker Grabsch <vog@notjusthosting.com>
parents: 475
diff changeset
8 $(PKG)_FILE := gcc-$($(PKG)_VERSION).tar.bz2
0fd340b5a6a8 improved structure of the gcc-* packages
Volker Grabsch <vog@notjusthosting.com>
parents: 475
diff changeset
9 $(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/gcc/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE)
2769
072676f75749 update package gcc
Mark Brand <mabrand@mabrand.nl>
parents: 2731
diff changeset
10 $(PKG)_URL_2 := ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE)
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
11 ifeq ($(USE_SYSTEM_GCC),yes)
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
12 $(PKG)_DEPS :=
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
13 else
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
14 ifeq ($(MXE_NATIVE_BUILD),yes)
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
15 $(PKG)_DEPS := binutils gcc-gmp gcc-mpc gcc-mpfr
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
16 else
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
17 ifeq ($(MXE_SYSTEM),mingw)
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
18 $(PKG)_DEPS := mingwrt w32api binutils gcc-gmp gcc-mpc gcc-mpfr
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
19 else
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
20 endif
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
21 endif
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
22 endif
2855
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
23 ifneq ($(BUILD_SHARED),yes)
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
24 $(PKG)_STATIC_FLAG := --static
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
25 endif
115
ae21cae1b378 translated packages: mingwrt, w32api, binutils, gcc
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
26
ae21cae1b378 translated packages: mingwrt, w32api, binutils, gcc
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
27 define $(PKG)_UPDATE
2525
4d0f3a9da57e all packages: use $(WGET) portability variable
Tony Theodore <tonyt@logyst.com>
parents: 2365
diff changeset
28 $(WGET) -q -O- 'http://ftp.gnu.org/gnu/gcc/?C=M;O=D' | \
605
96fa8fada1dc improved speed of version recognition for package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 504
diff changeset
29 $(SED) -n 's,.*<a href="gcc-\([0-9][^"]*\)/".*,\1,p' | \
1799
53a080f97374 package gcc: fix update macro
Mark Brand <mabrand@mabrand.nl>
parents: 1759
diff changeset
30 grep -v '^4\.[543]\.' | \
504
0fd340b5a6a8 improved structure of the gcc-* packages
Volker Grabsch <vog@notjusthosting.com>
parents: 475
diff changeset
31 head -1
115
ae21cae1b378 translated packages: mingwrt, w32api, binutils, gcc
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
32 endef
ae21cae1b378 translated packages: mingwrt, w32api, binutils, gcc
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
33
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
34 ifeq ($(USE_SYSTEM_GCC),yes)
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
35 define $(PKG)_BUILD
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
36 # create the CMake toolchain file
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
37 [ -d '$(dir $(CMAKE_TOOLCHAIN_FILE))' ] || mkdir -p '$(dir $(CMAKE_TOOLCHAIN_FILE))'
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
38 (if [ $(MXE_SYSTEM) = mingw ]; then \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
39 echo 'set(CMAKE_SYSTEM_NAME Windows)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
40 echo 'set(MSYS 1)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
41 fi; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
42 if [ $(BUILD_SHARED) = yes ]; then \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
43 echo 'set(BUILD_SHARED_LIBS ON)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
44 else \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
45 echo 'set(BUILD_SHARED_LIBS OFF)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
46 fi; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
47 if [ $(BUILD_STATIC) = yes ]; then \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
48 echo 'set(BUILD_STATIC_LIBS ON)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
49 else \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
50 echo 'set(BUILD_STATIC_LIBS OFF)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
51 fi; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
52 echo 'set(CMAKE_BUILD_TYPE Release)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
53 echo 'set(CMAKE_FIND_ROOT_PATH $(PREFIX)/$(TARGET))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
54 echo 'set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
55 echo 'set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
56 echo 'set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
57 echo 'set(CMAKE_C_COMPILER $(MXE_CC))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
58 echo 'set(CMAKE_CXX_COMPILER $(MXE_CXX))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
59 echo 'set(CMAKE_Fortran_COMPILER $(MXE_F77))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
60 echo 'set(CMAKE_RC_COMPILER $(MXE_WINDRES))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
61 echo 'set(PKG_CONFIG_EXECUTABLE $(MXE_PKG_CONFIG))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
62 echo 'set(QT_QMAKE_EXECUTABLE $(MXE_QMAKE))'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
63 echo 'set(CMAKE_INSTALL_PREFIX $(PREFIX)/$(TARGET) CACHE PATH "Installation Prefix")'; \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
64 echo 'set(CMAKE_BUILD_TYPE Release CACHE STRING "Debug|Release|RelWithDebInfo|MinSizeRel")') \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
65 > '$(CMAKE_TOOLCHAIN_FILE)'
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
66 endef
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
67 else
938
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
68 define $(PKG)_BUILD
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
69 # unpack support libraries
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
70 cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-gmp)
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
71 mv '$(1)/$(gcc-gmp_SUBDIR)' '$(1)/gmp'
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
72 cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-mpc)
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
73 mv '$(1)/$(gcc-mpc_SUBDIR)' '$(1)/mpc'
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
74 cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-mpfr)
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
75 mv '$(1)/$(gcc-mpfr_SUBDIR)' '$(1)/mpfr'
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
76
795dbc19e055 detangle package pthreads from package gcc
Volker Grabsch <vog@notjusthosting.com>
parents: 922
diff changeset
77 # build GCC and support libraries
1066
c7b2a7ef1bf9 use a build directory separate from the source directory in package gcc (by Tony Theodore)
Volker Grabsch <vog@notjusthosting.com>
parents: 1060
diff changeset
78 mkdir '$(1).build'
c7b2a7ef1bf9 use a build directory separate from the source directory in package gcc (by Tony Theodore)
Volker Grabsch <vog@notjusthosting.com>
parents: 1060
diff changeset
79 cd '$(1).build' && '$(1)/configure' \
444
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
80 --target='$(TARGET)' \
2153
e4c83fa61a5b replaced $(BUILD) with a more direct and less brittle construct
Volker Grabsch <vog@notjusthosting.com>
parents: 2151
diff changeset
81 --build="`config.guess`" \
444
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
82 --prefix='$(PREFIX)' \
1950
f97ce88183f5 packages gcc libmikmod: explicitly specify --libdir
Mark Brand <mabrand@mabrand.nl>
parents: 1905
diff changeset
83 --libdir='$(PREFIX)/lib' \
444
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
84 --enable-languages='c,c++,objc,fortran' \
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
85 --enable-version-specific-runtime-libs \
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
86 --with-gcc \
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
87 --with-gnu-ld \
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
88 --with-gnu-as \
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
89 --disable-nls \
2855
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
90 $(ENABLE_SHARED_OR_STATIC) \
1759
544f2ac34b4d disable SJLJ exceptions explicitly, as those cause trouble
Kay Hayen <kayhayen@gmx.de>
parents: 1692
diff changeset
91 --disable-sjlj-exceptions \
444
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
92 --without-x \
c828215f90ae enable libgomp (OpenMP) in package gcc by interweaving the pthread build into the gcc build
Volker Grabsch <vog@notjusthosting.com>
parents: 426
diff changeset
93 --disable-win32-registry \
943
bc40d4f60207 provide GCC OpenMP functionality as extra package libgomp (by Tony Theodore)
Volker Grabsch <vog@notjusthosting.com>
parents: 942
diff changeset
94 --enable-threads=win32 \
bc40d4f60207 provide GCC OpenMP functionality as extra package libgomp (by Tony Theodore)
Volker Grabsch <vog@notjusthosting.com>
parents: 942
diff changeset
95 --disable-libgomp \
2010
7419a81ea558 update package gcc-mpfr
Mark Brand <mabrand@mabrand.nl>
parents: 1965
diff changeset
96 --disable-libmudflap \
7419a81ea558 update package gcc-mpfr
Mark Brand <mabrand@mabrand.nl>
parents: 1965
diff changeset
97 --with-mpfr-include='$(1)/mpfr/src' \
2731
7dece766f419 package gcc: fix for OSX ASLR issues with pre-compiled headers
Tony Theodore <tonyt@logyst.com>
parents: 2707
diff changeset
98 --with-mpfr-lib='$(1).build/mpfr/src/.libs' \
7dece766f419 package gcc: fix for OSX ASLR issues with pre-compiled headers
Tony Theodore <tonyt@logyst.com>
parents: 2707
diff changeset
99 $(shell [ `uname -s` == Darwin ] && echo "LDFLAGS='-Wl,-no_pie'")
1066
c7b2a7ef1bf9 use a build directory separate from the source directory in package gcc (by Tony Theodore)
Volker Grabsch <vog@notjusthosting.com>
parents: 1060
diff changeset
100 $(MAKE) -C '$(1).build' -j '$(JOBS)'
c7b2a7ef1bf9 use a build directory separate from the source directory in package gcc (by Tony Theodore)
Volker Grabsch <vog@notjusthosting.com>
parents: 1060
diff changeset
101 $(MAKE) -C '$(1).build' -j 1 install
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
102 mkdir -p $(PREFIX)/../cross-tools/$(MXE_BINDIR)
2916
c90f5757f351 also install cross and native tools in separate destdir locations
John W. Eaton <jwe@octave.org>
parents: 2895
diff changeset
103 $(MAKE) -C '$(1).build' -j 1 DESTDIR=$(PREFIX)/../cross-tools install
695
b930f92b1f77 use the natively installed pkg-config instead of building a custom pkg-config
Volker Grabsch <vog@notjusthosting.com>
parents: 650
diff changeset
104
b930f92b1f77 use the natively installed pkg-config instead of building a custom pkg-config
Volker Grabsch <vog@notjusthosting.com>
parents: 650
diff changeset
105 # create pkg-config script
b930f92b1f77 use the natively installed pkg-config instead of building a custom pkg-config
Volker Grabsch <vog@notjusthosting.com>
parents: 650
diff changeset
106 (echo '#!/bin/sh'; \
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
107 echo 'PKG_CONFIG_PATH="$$PKG_CONFIG_PATH_$(subst -,_,$(TARGET))" PKG_CONFIG_LIBDIR='\''$(MXE_LIBDIR)/pkgconfig'\'' exec pkg-config $($(PKG)_STATIC_FLAG) "$$@"') \
695
b930f92b1f77 use the natively installed pkg-config instead of building a custom pkg-config
Volker Grabsch <vog@notjusthosting.com>
parents: 650
diff changeset
108 > '$(PREFIX)/bin/$(TARGET)-pkg-config'
b930f92b1f77 use the natively installed pkg-config instead of building a custom pkg-config
Volker Grabsch <vog@notjusthosting.com>
parents: 650
diff changeset
109 chmod 0755 '$(PREFIX)/bin/$(TARGET)-pkg-config'
2329
466e77a78672 Fix annoying whitespaces at EOL
Volker Grabsch <vog@notjusthosting.com>
parents: 2296
diff changeset
110
1663
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
111 # create the CMake toolchain file
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
112 [ -d '$(dir $(CMAKE_TOOLCHAIN_FILE))' ] || mkdir -p '$(dir $(CMAKE_TOOLCHAIN_FILE))'
2707
4c2874e00f0c Move CMAKE_BUILD_TYPE into toolchain file
Volker Grabsch <vog@notjusthosting.com>
parents: 2706
diff changeset
113 (echo 'set(CMAKE_SYSTEM_NAME Windows)'; \
1965
2a749f1c6756 additional variable for the cmake toolchain file
Zach Thibeau <zachary.thibeau@gmail.com>
parents: 1950
diff changeset
114 echo 'set(MSYS 1)'; \
2855
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
115 if [ $(BUILD_SHARED) = yes ]; then \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
116 echo 'set(BUILD_SHARED_LIBS ON)'; \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
117 else \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
118 echo 'set(BUILD_SHARED_LIBS OFF)'; \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
119 fi; \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
120 if [ $(BUILD_STATIC) = yes ]; then \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
121 echo 'set(BUILD_STATIC_LIBS ON)'; \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
122 else \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
123 echo 'set(BUILD_STATIC_LIBS OFF)'; \
47558e958113 Allow static/shared libraries to be configured in top-level Makefile.
John W. Eaton <jwe@octave.org>
parents: 2769
diff changeset
124 fi; \
2707
4c2874e00f0c Move CMAKE_BUILD_TYPE into toolchain file
Volker Grabsch <vog@notjusthosting.com>
parents: 2706
diff changeset
125 echo 'set(CMAKE_BUILD_TYPE Release)'; \
1663
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
126 echo 'set(CMAKE_FIND_ROOT_PATH $(PREFIX)/$(TARGET))'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
127 echo 'set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
128 echo 'set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
129 echo 'set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
130 echo 'set(CMAKE_C_COMPILER $(PREFIX)/bin/$(TARGET)-gcc)'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
131 echo 'set(CMAKE_CXX_COMPILER $(PREFIX)/bin/$(TARGET)-g++)'; \
2092
5af000bfab36 add cmake definition for fortran
Mark Brand <mabrand@mabrand.nl>
parents: 2054
diff changeset
132 echo 'set(CMAKE_Fortran_COMPILER $(PREFIX)/bin/$(TARGET)-gfortran)'; \
1663
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
133 echo 'set(CMAKE_RC_COMPILER $(PREFIX)/bin/$(TARGET)-windres)'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
134 echo 'set(PKG_CONFIG_EXECUTABLE $(PREFIX)/bin/$(TARGET)-pkg-config)'; \
2015
b289b25fa9c0 set QT_QMAKE_EXECUTABLE in cmake toolchain file
Mark Brand <mabrand@mabrand.nl>
parents: 2010
diff changeset
135 echo 'set(QT_QMAKE_EXECUTABLE $(PREFIX)/bin/$(TARGET)-qmake)'; \
1663
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
136 echo 'set(CMAKE_INSTALL_PREFIX $(PREFIX)/$(TARGET) CACHE PATH "Installation Prefix")'; \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
137 echo 'set(CMAKE_BUILD_TYPE Release CACHE STRING "Debug|Release|RelWithDebInfo|MinSizeRel")') \
9577f70222f8 add cmake toolchain file and simplify build rules of relevant packages
Tony Theodore <tonyt@logyst.com>
parents: 1524
diff changeset
138 > '$(CMAKE_TOOLCHAIN_FILE)'
115
ae21cae1b378 translated packages: mingwrt, w32api, binutils, gcc
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
139 endef
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2920
diff changeset
140 endif