12 Commits

Author SHA1 Message Date
Paul Gortmaker 9199968550 netcf: fix mishandling of gnulib submodule causing build fail
netcf fails to build on certain hosts with newer versions
of git installed as follows:

| ./bootstrap: Bootstrapping from checked-out netcf sources...
| ./bootstrap: consider installing git-merge-changelog from gnulib
| ./bootstrap: getting gnulib files...
| error: pathspec 'gnulib' did not match any file(s) known to git.

If we do a devshell we will see that our configure prepend that
intended to _create_ the .gitmodules has instead _modified_ it
and left us with this change present:

  sh-4.3# git diff
  diff --git a/.gitmodules b/.gitmodules
  index 7acb1ea19ca7..2d10b0e0e0fe 100644
  --- a/.gitmodules
  +++ b/.gitmodules
  @@ -1,3 +1,3 @@
   [submodule "gnulib"]
  -       path = .gnulib
  -       url = git://git.sv.gnu.org/gnulib.git
  +       path = gnulib
  +       url = git://git.sv.gnu.org/gnulib
  sh-4.3#

What happens is that the newer git does not respect uncommitted
changes to the .gitmodules file, and hence the path ".gnulib" is
still considered valid vs. the in tree updated path "gnulib".  It
doesn't help any that the package has its own tracked files in
gnulib/ that we stomp over, but the real fail is just uncommitted
changes to the .gitmodule as this insertion of a random path shows:

  sh-4.3# git diff
  diff --git a/.gitmodules b/.gitmodules
  index 7acb1ea19ca7..91bd45f8e4d4 100644
  --- a/.gitmodules
  +++ b/.gitmodules
  @@ -1,3 +1,3 @@
   [submodule "gnulib"]
  -       path = .gnulib
  +       path = gnulibaaa
          url = git://git.sv.gnu.org/gnulib.git
  sh-4.3# git --version
  git version 2.7.4
  sh-4.3# git submodule init
  fatal: no submodule mapping found in .gitmodules for path '.gnulib'
  sh-4.3#

Since the original bbclass simply assumed there was no .gitmodules
file to begin with, we can easily solve this by not clobbering it
and respect the path choice used by the package itself.

As the version of ./bootstrap shipped with netcf supports this:

     --no-git       do not use git to update gnulib.  Requires that
                    --gnulib-srcdir point to a correct gnulib snapshot

we can use it in conjunction with the pathspec since we know the
gnulib was just copied in from the sysroot, and does not need
to try and pull any further updates.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2016-05-13 23:06:47 -07:00
Paul Gortmaker 3cec94aef8 autotools-bootstrap: make bootstrap package specific.
The theory behind this bbclass was reasonable, with the primary
goal being to avoid multiple downloads of gnulib, but it neglected
the fact that packages would be shipping a specific version of the
./bootstrap which will support some flags but maybe not all the
latest ones from the latest gnulib/build-aux/bootstrap file.

I attempted to simply update the two pkgs to use the latest copy
of bootstrap from gnulib but this of course triggers the descent
into autoconf hell that we all know and love.  Rather than futzing
with the packages configure.ac and deviating from what the pkg
maintainers intended and tested, we can just let the packages have
independent calls to ./bootstrap with whatever flags are needed.

The goal of this commit is to move the prepend out to the packages
and then delete the class without any real functional change ; i.e.
a purely mechanical change.  Then we can adjust each package to
ensure it will still build with a modern host, in an independent
fashion, while keeping the main advantage of not fetching gnulib
two extra times for netcf and fontforge.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2016-05-13 23:05:54 -07:00
Andreas Müller 676e7016d6 netcf: use autotools-bootstrap.bbclass
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
2015-11-06 17:49:36 +01:00
Joe MacDonald e16d5c0876 netcf: support multilib builds
When doing a multilib build, /usr/lib is still created but not collected
into FILES_${PN} by default, resulting in a QA error.  Adding both
${libdir} and ${nonarch_libdir} catches all scenarios.

It also turns out that the previous do_install_append would throw an error
in a multilib build since systemd always installs to .../lib/... but
${libdir] would point at .../lib64/...

Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2015-08-19 15:26:30 -04:00
Li xin 77d17425b5 netcf: upgrade 0.2.3 -> 0.2.8
add systemd support for netcf

Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2015-08-07 10:59:39 -04:00
Joe MacDonald 8980f0d2a2 meta-networking: standardize SECTION values
SECTION has been used inconsistently throughout the recipes in this layer.
Convert them to all use the same convention.

Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2015-06-05 20:42:25 -04:00
Roy Li 8f84267086 netcf: init script should be installed under /etc/init.d/
init script should be installed under /etc/init.d/, not /etc/rc.d/init.d

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-08-10 16:07:18 +02:00
Richard Purdie 36d57b9234 recipes: add missing pkgconfig class inherits
* These recipes all use pkg-config in some way but were missing
  dependencies on the tool, this patch adds them.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-06-21 13:06:13 +02:00
Robert Yang 103cb4ab99 netcf: inherit autotools-brokensep
It needs autotools-brokensep, otherwise do_install error:

make: *** No rule to make target `install'.  Stop.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2014-06-15 23:21:33 -04:00
Hongxu Jia 60c4964055 netcf: fix offline rebuilding failed
The netcf downloaded gnulib source to ${S} at the configure time,
while the network disconnected, if sstate cache was cleaned, the
netcf rebuilding failed.

Added a new recipe named 'gnulib' to download gnulib source to
${GITDIR} and populate it to the staging data dir.

So netcf could specify this local directory where gnulib sources
reside to save the bandwidth downloading.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2014-03-14 08:51:44 -04:00
Ting Liu 3c96399c76 netcf: hardcode --with-driver=redhat for target build
The configure script of netcf checks the HOST setup to identify the
network interface. This means it checks for Red Hat, SuSE, debian,
Ubuntu, etc. As this is an embedded cross build, it doesn't seem to
make sense to check the HOST in the first place to determine info for
the TARGET.

Signed-off-by: Ting Liu <b28495@freescale.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-01-22 12:22:37 +01:00
Bruce Ashfield a1b14825aa netcf: move from meta-virtualization to meta-networking
netcf was orginally introduced in meta-virtualization, since it provides
functionality required by libvirt, but it is otherwise not bound to
virtualization.

So we can move it to meta-networking, and in the process uprev to the
the latest 0.2.3 functinality.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Joe MacDonald <joe@deserted.net>
2013-11-06 15:12:45 -05:00