merge of '1d06736abd89e6b42d2eaf5918fcd17ad518fcb3'
[vuplus_openembedded] / classes / native.bbclass
1 inherit base
2
3 # Native packages are built indirectly via dependency,
4 # no need for them to be a direct target of 'world'
5 EXCLUDE_FROM_WORLD = "1"
6
7 PACKAGES = ""
8 PACKAGE_ARCH = "${BUILD_ARCH}"
9
10 # When this class has packaging enabled, setting 
11 # RPROVIDES becomes unnecessary.
12 RPROVIDES = "${PN}"
13
14 TARGET_ARCH = "${BUILD_ARCH}"
15 TARGET_OS = "${BUILD_OS}"
16 TARGET_VENDOR = "${BUILD_VENDOR}"
17 TARGET_PREFIX = "${BUILD_PREFIX}"
18 TARGET_CC_ARCH = "${BUILD_CC_ARCH}"
19
20 HOST_ARCH = "${BUILD_ARCH}"
21 HOST_OS = "${BUILD_OS}"
22 HOST_VENDOR = "${BUILD_VENDOR}"
23 HOST_PREFIX = "${BUILD_PREFIX}"
24 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
25
26 CPPFLAGS = "${BUILD_CPPFLAGS}"
27 CFLAGS = "${BUILD_CFLAGS}"
28 CXXFLAGS = "${BUILD_CFLAGS}"
29 LDFLAGS = "${BUILD_LDFLAGS}"
30 LDFLAGS_build-darwin = "-L${STAGING_LIBDIR_NATIVE} "
31
32 STAGING_BINDIR = "${STAGING_BINDIR_NATIVE}"
33 STAGING_BINDIR_CROSS = "${STAGING_BINDIR_NATIVE}"
34
35 # Don't use site files for native builds
36 export CONFIG_SITE = ""
37
38 # set the compiler as well. It could have been set to something else
39 export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
40 export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}"
41 export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}"
42 export CPP = "${HOST_PREFIX}gcc -E"
43 export LD = "${HOST_PREFIX}ld"
44 export CCLD = "${CC}"
45 export AR = "${HOST_PREFIX}ar"
46 export AS = "${HOST_PREFIX}as"
47 export RANLIB = "${HOST_PREFIX}ranlib"
48 export STRIP = "${HOST_PREFIX}strip"
49
50 # Path prefixes
51 export base_prefix = "${STAGING_DIR_NATIVE}"
52 export prefix = "${STAGING_DIR_NATIVE}${layout_prefix}"
53 export exec_prefix = "${STAGING_DIR_NATIVE}${layout_exec_prefix}"
54
55 # Base paths
56 export base_bindir = "${STAGING_DIR_NATIVE}${layout_base_bindir}"
57 export base_sbindir = "${STAGING_DIR_NATIVE}${layout_base_sbindir}"
58 export base_libdir = "${STAGING_DIR_NATIVE}${layout_base_libdir}"
59
60 # Architecture independent paths
61 export datadir = "${STAGING_DIR_NATIVE}${layout_datadir}"
62 export sysconfdir = "${STAGING_DIR_NATIVE}${layout_sysconfdir}"
63 export sharedstatedir = "${STAGING_DIR_NATIVE}${layout_sharedstatedir}"
64 export localstatedir = "${STAGING_DIR_NATIVE}${layout_localstatedir}"
65 export infodir = "${STAGING_DIR_NATIVE}${layout_infodir}"
66 export mandir = "${STAGING_DIR_NATIVE}${layout_mandir}"
67 export docdir = "${STAGING_DIR_NATIVE}${layout_docdir}"
68 export servicedir = "${STAGING_DIR_NATIVE}${layout_servicedir}"
69
70 # Architecture dependent paths
71 export bindir = "${STAGING_DIR_NATIVE}${layout_bindir}"
72 export sbindir = "${STAGING_DIR_NATIVE}${layout_sbindir}"
73 export libexecdir = "${STAGING_DIR_NATIVE}${layout_libexecdir}"
74 export libdir = "${STAGING_DIR_NATIVE}${layout_libdir}"
75 export includedir = "${STAGING_DIR_NATIVE}${layout_includedir}"
76 export oldincludedir = "${STAGING_DIR_NATIVE}${layout_includedir}"
77
78 do_stage () {
79         if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ]
80         then
81                 oe_runmake install
82         fi
83 }
84
85 do_install () {
86         true
87 }
88
89 PKG_CONFIG_PATH .= "${EXTRA_NATIVE_PKGCONFIG_PATH}"
90 PKG_CONFIG_SYSROOT_DIR = ""