1 |
After gathering some feedback, after addressing reported issues, now I feel |
2 |
it's ready for public consumption. especially when static-libs is being used |
3 |
more and more often. It's purpose is to become standard eclass for autotools |
4 |
build systems. |
5 |
|
6 |
Brief description: |
7 |
autotools-utils.eclass is autotools.eclass (so libtool.eclass) and base.eclass |
8 |
(so eutils.eclass) wrapper providing all inherited features (it is guaranteed, |
9 |
no need to additionally inherit any of those) along with econf arguments as |
10 |
Bash array, out of source build with overridable build dir location, static |
11 |
archives handling, libtool files removal, enable/disable debug handling. It's |
12 |
modelled after cmake-utils and resembles it in many aspects for consistency. |
13 |
|
14 |
Notable features: |
15 |
- eautoreconf, eautomake, elibtoolize, eaclocal functions (from autotools) |
16 |
- PATCHES and user patches support (from base) |
17 |
- DOCS and HTML_DOCS arrays support (from base) |
18 |
- myeconfargs - econf arguments as Bash array (usage like mycmakeargs in |
19 |
cmake-utils, if used, needs to be defined just before autotools- |
20 |
utils_src_configure call) |
21 |
- out of source build (enabled by default) with overridable build dir location |
22 |
- static archives handling (static-libs in IUSE) |
23 |
- automatic removal of unnecessary static archives (usually for plugins, |
24 |
determined by presence of shouldnotlink=yes libtool property) |
25 |
- libtool files removal (static-libs in IUSE, determined by absence of |
26 |
shouldnotlink=yes libtool property) |
27 |
- enable/disable-debug handing (debug in IUSE) |
28 |
- remove_libtool_files function to help override libtool removal behaviour |
29 |
(you shouldn't need it, any usage or this function with parameter 'none' will |
30 |
be reported and punished :p) |
31 |
|
32 |
Restrictions: |
33 |
- only >= EAPI-2 supported (this is intentional as src_prepare phase is |
34 |
provided, EAPI-0,1 would mean providing src_unpack as well, which is |
35 |
unacceptable for build system eclasses) |
36 |
|
37 |
Attached two example ebuilds. |
38 |
Refer to eclass manual page for details or more extensive example usage. |
39 |
|
40 |
-- |
41 |
regards |
42 |
MM |