Commit graph

12 commits

Author SHA1 Message Date
Johan Oudinet 9b28acb686 package/pkg-rebar.mk: change semantic of <PKG>_KEEP_DEPENDENCIES
Set it to NO by default and check if it is equal to NO. This is to
be more consistent with other boolean variables in Buildroot.

Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-12-09 17:24:17 +01:00
Johan Oudinet ab60ea2939 package/pkg-rebar.mk: fix remove-rebar-config-dependencies
Handle the case where there is only one dependency described in
rebar.config, so when the line starts by '{deps' and ends by '}.'.
Before it was deleting this line but also all next lines until finding
a line that ends by '}.'.

Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-12-09 17:24:14 +01:00
Johan Oudinet 1402956d4b package/pkg-rebar.mk: remove dependencies from rebar.config
Instead of having a patch in every rebar package to remove the
dependencies in the rebar.config file in order to avoid rebar
downloading such dependencies at build time, implement it directly
as a post-patch hook in the rebar infrastructure.
Add a way to explicitly deactivate this behavior if any package needs
such lines in the rebar.config file.

Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
[Thomas:
 - rename macro to remove-rebar-config-dependencies
 - move the macro outside the inner-rebar-package, so that it is
   declared with the other utility macros found in pkg-rebar.mk]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-11-28 22:27:04 +01:00
Arnout Vandecappelle 9c9e076a9f pkg-rebar: use $(HOST_DIR) instead of $(HOST_DIR)/usr as prefix
Remove the redundant usr/ component of the HOST_DIR paths. Since a
previous commit added a symlink from $(HOST_DIR)/usr to $(HOST_DIR),
everything keeps on working.

$(PKG)_ERLANG_LIBDIR is problematic because it is used both for host
and staging/target. Therefore, the usr/ part is removed from it, and
added the the callers instead.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Frank Hunleth <fhunleth@troodon-software.com>
Reviewed-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-05 11:50:51 +02:00
Arnout Vandecappelle 417ade5f2b pkg-rebar: remove redundant / in front of $($(PKG)_ERLANG_LIBDIR)
Sometimes $(1)/$($(PKG)_ERLANG_LIBDIR) is used, sometimes
$(1)$($(PKG)_ERLANG_LIBDIR). Make this consistent, with /. Therefore,
remove the leading / from $($(PKG)_ERLANG_LIBDIR).

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-04 08:35:09 +02:00
Julien Floret 4bdb067e38 infra: remove auto derivation of host dependencies
This feature consists in automatically deducing dependencies of a host
package from the dependencies of the target variant.

However, it causes some issues, and many host packages need different
dependencies than their target variants.

Now that host dependencies are explicitly set for all packages, we can
remove it.

Signed-off-by: Julien Floret <julien.floret@6wind.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-03 10:24:02 +02:00
Frank Hunleth 6be72cd8ca pkg-rebar.mk: pass C++ compiler path and options
Previously only the C compiler path and options were passed to rebar.
Erlang projects that used the C++ compiler would fail to build, which
would for example be the case with the latest version of
erlang-p1-stringprep. This fixes those errors.

Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
[Thomas: adjust commit message to indicate an example of an Erlang
package that needs the C++ compiler.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-02-20 16:55:25 +01:00
Maxime Hadjinlian 7a6b83a211 skeleton: New package
Create a proper package for the skeleton.

The main Makefile is modified to remove the skeleton support.
The 'dirs' target, will create the $(TARGET_DIR).
The file 'output/target/.root' doesn't exists anymore, as there's no
Make rule to statisfy.

The infrastructure are modified to filter host-skeleton.
It's needed becauses the host-dependencies are derived from the
dependencies of the target package where 'host-' is preprended to the
depedency name.

In the pkg-generic we add skeleton as a dependency to every package.

The whole system/system.mk is now removed at the profit of
package/skeleton/skeleton.mk

[Thomas:
  - rebase on top of master and fix some minor conflicts
  - remove the 'select BR2_PACKAGE_SKELETON' in
    BR2_ROOTFS_SKELETON_DEFAULT and BR2_ROOTFS_SKELETON_CUSTOM, since
    anyway the skeleton package is always enabled.
  - fixup a few mistakes in the getty handling due to misnamed
    variables.]

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-14 18:08:23 +02:00
Frank Hunleth 235879bab5 pkg-rebar: fix very minor typos in the comments
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-02-19 22:27:35 +01:00
Frank Hunleth 7af66e5053 pkg-rebar: add bin to list of install directories
Some Erlang packages provide a bin directory for programs that are to be
invoked from the command line. An example of such a package is the Lisp
Flavored Erlang compiler. The Erlang OTP library includes several more
examples (it doesn't use rebar, though.) This change makes sure that the
bin directory gets installed too.

Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-02-18 23:21:01 +01:00
Frank Hunleth a02045ca26 pkg-rebar: HOST_CC -> HOSTCC
Fix HOSTCC typo that would cause host-rebar builds to fail.

Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-02-18 23:20:34 +01:00
Johan Oudinet 781b494658 package/pkg-rebar: new infrastructure
Ease the development of packages that use the erlang rebar tool as
their build system.

Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
[yann.morin.1998@free.fr: split the patch into semantically separated
patches; large rewrites of the rest]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>

[Thomas, with help from Yann and Arnout:
 - Fix the comment about the symlink used to make sure rebar does not
   download dependencies. The comment was not up-to-date with where
   the symlink is actually created.
 - Make <pkg>_USE_BUNDLED_REBAR and <pkg>_USE_AUTOCONF be inherited by
   host packages from their corresponding target package.
 - Make sure host dependencies are inherited from the corresponding
   target packages dependencies. This requires copying some logic from
   inner-autotools-package and inner-generic-package, just like
   inner-autotools-package duplicates some logic from
   inner-generic-package.
 - Fix host variant of $(2)_BUILD_CMDS indentation, use double quotes
   instead of simple quotes. So that it matches the target
   $(2)_BUILD_CMDS, and what we do elsewhere in Buildroot.]

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-02-03 10:22:58 +01:00