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

Contents of /eclass/bsdmk.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.9 - (show annotations) (download)
Fri Aug 8 21:16:24 2008 UTC (5 years, 8 months ago) by aballier
Branch: MAIN
Changes since 1.8: +30 -12 lines
make bsdmk eclass ready for eclass manpages, by mren <bugs@rennings.net>, bug #210774

1 # Copyright 1999-2008 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
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 echo ".include <bsd.lib.mk>" > ${dir}/Makefile
68 done
69 }
70
71 # @FUNCTION: bsdmk_src_compile
72 # @DESCRIPTION:
73 # The bsdmk src_compile function, which is exported
74 bsdmk_src_compile() {
75 mkmake || die "make failed"
76 }
77
78 # @FUNCTION: bsdmk_src_install
79 # @DESCRIPTION:
80 # The bsdmk src_install function, which is exported
81 bsdmk_src_install() {
82 mkinstall || die "install failed"
83 }

  ViewVC Help
Powered by ViewVC 1.1.20