/[gentoo-x86]/eclass/bsdmk.eclass
Gentoo

Contents of /eclass/bsdmk.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.12 - (show annotations) (download)
Fri Aug 9 16:26:59 2013 UTC (12 months, 1 week ago) by aballier
Branch: MAIN
CVS Tags: HEAD
Changes since 1.11: +2 -2 lines
bsdmk_src_compile: forward arguments to mkmake

1 # Copyright 1999-2011 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/eclass/bsdmk.eclass,v 1.11 2011/12/27 17:55:12 fauli Exp $
4
5 # @ECLASS: bsdmk.eclass
6 # @MAINTAINER:
7 # Otavio R. Piske "AngusYoung" <angusyoung@gentoo.org>
8 # Diego PettenĂ² <flameeyes@gentoo.org>
9 # Benigno B. Junior <bbj@gentoo.org>
10 # @BLURB: Some functions for BSDmake
11
12 inherit toolchain-funcs portability flag-o-matic
13
14 EXPORT_FUNCTIONS src_compile src_install
15
16 RDEPEND=""
17 # this should actually be BDEPEND, but this works.
18 DEPEND="virtual/pmake"
19
20 ESED="/usr/bin/sed"
21
22 # @ECLASS-VARIABLE: mymakeopts
23 # @DESCRIPTION:
24 # Options for bsd-make
25
26 # @FUNCTION: append-opt
27 # @USAGE: < options >
28 # @DESCRIPTION:
29 # append options to enable or disable features
30 append-opt() {
31 mymakeopts="${mymakeopts} $@"
32 }
33
34 # @FUNCTION: mkmake
35 # @USAGE: [ options ]
36 # @DESCRIPTION:
37 # calls bsd-make command with the given options, passing ${mymakeopts} to
38 # enable ports to useflags bridge.
39 mkmake() {
40 [[ -z ${BMAKE} ]] && BMAKE="$(get_bmake)"
41
42 tc-export CC CXX LD RANLIB
43
44 ${BMAKE} ${MAKEOPTS} ${EXTRA_EMAKE} ${mymakeopts} NO_WERROR= STRIP= "$@"
45 }
46
47 # @FUNCTION: mkinstall
48 # @USAGE: [ options ]
49 # @DESCRIPTION:
50 # Calls "bsd-make install" with the given options, passing ${mamakeopts} to
51 # enable ports to useflags bridge
52 mkinstall() {
53 [[ -z ${BMAKE} ]] && BMAKE="$(get_bmake)"
54
55 # STRIP= will replace the default value of -s, leaving to portage the
56 # task of stripping executables.
57 ${BMAKE} ${mymakeopts} NO_WERROR= STRIP= MANSUBDIR= DESTDIR="${D}" "$@" install
58 }
59
60 # @FUNCTION: dummy_mk
61 # @USAGE: < dirnames >
62 # @DESCRIPTION:
63 # removes the specified subdirectories and creates a dummy makefile in them
64 # useful to remove the need for "minimal" patches
65 dummy_mk() {
66 for dir in $@; do
67 [ -d ${dir} ] || ewarn "dummy_mk called on a non-existing directory: $dir"
68 [ -f ${dir}/Makefile ] || ewarn "dummy_mk called on a directory without Makefile: $dir"
69 echo ".include <bsd.lib.mk>" > ${dir}/Makefile
70 done
71 }
72
73 # @FUNCTION: bsdmk_src_compile
74 # @DESCRIPTION:
75 # The bsdmk src_compile function, which is exported
76 bsdmk_src_compile() {
77 mkmake "$@" || die "make failed"
78 }
79
80 # @FUNCTION: bsdmk_src_install
81 # @DESCRIPTION:
82 # The bsdmk src_install function, which is exported
83 bsdmk_src_install() {
84 mkinstall || die "install failed"
85 }

  ViewVC Help
Powered by ViewVC 1.1.20