Hi,
On Fri, Feb 02, 2018 at 11:59:03AM +0100, Guillermo Rodriguez Garcia wrote:
> I am trying to create a ptxdist package for mediastreamer2. By default,
> releases come without a configure script, and with an autogen.sh that
> requires intltoolize.
>
> So I first tried the following:
>
> In mediastreamer2.in:
>
> select HOST_INTLTOOL
>
> In mediasteamer2.make:
>
> $(STATEDIR)/mediastreamer2.extract: I'm guessing you got that from the latest src-autoconf template. This is
> @$(call targetinfo)
> @$(call clean, $(MEDIASTREAMER2_DIR))
> @$(call extract, MEDIASTREAMER2)
> cd $(MEDIASTREAMER2_DIR) && [ -f configure ] || sh autogen.sh
> @$(call patchin, MEDIASTREAMER2)
> @$(call touch)
>
> However, this does not work because apparently ptxdist resolves
> dependencies after the extract stage, so when autogen.sh is run, the
> host-intltool package has not been installed yet.
>
> So I tried to run autogen.sh from the extract.post stage instead:
>
> $(STATEDIR)/mediastreamer2.extract.post:
> @$(call targetinfo)
> cd $(MEDIASTREAMER2_DIR) && [ -f configure ] || sh autogen.sh
still broken. It's missing the actual extract.post command:
@$(call world/patchin/post, @PACKAGE@)
> @$(call touch)
>
> This way, host-intltool is installed before autogen.sh is run, so that part
> work. But this creates other problems: The install stage fails when trying
> to relink some libraries.
>
> What is the proper way to do this?
The template whre you got this from is for packages where the source is
part of your BSP. I don't think this is the case for mediasteamer2. You
should use the 'target' new-package template.
For most packages the tarball contains the configure script. In that case
nothing special need to happen. If the configure script is missing, then
you need to create a autogen.sh link.
e.g. like the libyaml package in PTXdist does this with
patches/libyaml-0.1.7/autogen.sh.