sanity.bbclass: allow dash to be used as /bin/sh, but print a warning
[vuplus_openembedded] / classes / canadian-sdk.bbclass
1 # Canadian SDK packages are built either explicitly by the user,
2 # or indirectly via dependency.  No need to be in 'world'.
3 EXCLUDE_FROM_WORLD = "1"
4
5 inherit canadian
6
7 PACKAGE_ARCH = "${SDK_SYS}-sdk-${OLD_PACKAGE_ARCH}"
8 BASE_PACKAGE_ARCH = "${OLD_BASE_PACKAGE_ARCH}"
9
10 HOST_ARCH = "${SDK_ARCH}"
11 HOST_VENDOR = "${SDK_VENDOR}"
12 HOST_OS = "${SDK_OS}"
13 HOST_PREFIX = "${SDK_PREFIX}"
14 HOST_CC_ARCH = "${SDK_CC_ARCH}"
15 HOST_EXEEXT = "${SDK_EXEEXT}"
16
17 CPPFLAGS = "${SDK_CPPFLAGS}"
18 CFLAGS = "${SDK_CFLAGS}"
19 CXXFLAGS = "${SDK_CFLAGS}"
20 LDFLAGS = "${SDK_LDFLAGS}"
21
22 DEPENDS_prepend = "virtual/${HOST_PREFIX}binutils virtual/${HOST_PREFIX}gcc "
23
24 # On mingw systems we want to have the real sysroot default to c:/... and
25 # assume that the default install will be on the C drive.  This can be changed
26 # by setting SDK_REALPATH_MINGW.
27 SDK_REALPATH = "${SDK_PATH}"
28 SDK_REALPATH_MINGW ?= "C:"
29
30 # Path prefixes
31 prefix = "${SDK_PATH}"
32 exec_prefix = "${prefix}"
33 base_prefix = "${prefix}"
34
35 # Base paths
36 export base_bindir = "${prefix}/bin"
37 export base_sbindir = "${prefix}/bin"
38 export base_libdir = "${prefix}/lib"
39
40 # Architecture independent paths
41 export datadir = "${prefix}/share"
42 export sysconfdir = "${prefix}/etc"
43 export sharedstatedir = "${datadir}/com"
44 export localstatedir = "${prefix}/var"
45 export infodir = "${datadir}/info"
46 export mandir = "${datadir}/man"
47 export docdir = "${datadir}/doc"
48 export servicedir = "${prefix}/srv"
49
50 # Architecture dependent paths
51 export bindir = "${prefix}/bin"
52 export sbindir = "${prefix}/bin"
53 export libexecdir = "${prefix}/libexec"
54 export libdir = "${prefix}/lib"
55 export includedir = "${prefix}/include"
56 export oldincludedir = "${prefix}/include"
57
58 export dollar = "$"
59
60 canadian_sdk_runconf() {
61         # modified oe_runconf()
62         # 1. Override prefix with SDK_REALPATH
63         # 2. Pass '${prefix}' to configure, to allow for prefix override
64         # 3. But don't do that for infodir and mandir, as they will
65         #    break gcc makefiles for windows/dos SDK_REALPATH
66         if [ -x ${S}/configure ] ; then
67                 cfgcmd="${S}/configure \
68                     --build=${BUILD_SYS} \
69                     --host=${HOST_SYS} \
70                     --target=${TARGET_SYS} \
71                     --prefix=${SDK_REALPATH} \
72                     --exec-prefix=$dollar{prefix} \
73                     --bindir=$dollar{prefix}/bin \
74                     --sbindir=$dollar{prefix}/bin \
75                     --libexecdir=$dollar{prefix}/libexec \
76                     --datadir=$dollar{prefix}/share \
77                     --sysconfdir=$dollar{prefix}/etc \
78                     --sharedstatedir=$dollar{prefix}/com \
79                     --localstatedir=$dollar{prefix}/var \
80                     --libdir=$dollar{prefix}/lib \
81                     --includedir=$dollar{prefix}/include \
82                     --oldincludedir=$dollar{prefix}/include \
83                     --infodir=${prefix}/share/info \
84                     --mandir=${prefix}/share/man \
85                     --enable-mainainer-mode \
86                     ${EXTRA_OECONF} \
87                     $@"
88                 oenote "Running $cfgcmd..."
89                 $cfgcmd || oefatal "oe_runconf failed"
90         else
91                 oefatal "no configure script found"
92         fi
93 }
94
95 FILES_${PN} = "${prefix}"
96 FILES_${PN}-dbg += "${prefix}/.debug \
97                     ${prefix}/bin/.debug \
98                    "