• How to create multi-source tarball with different submodules for scipy

    From Andreas Tille@21:1/5 to All on Mon Jan 16 17:10:02 2023
    XPost: linux.debian.maint.python

    Hi,

    I tried to create a multi-source tarball for scipy in its experimental branch[1]. Upstream includes a set of git submodules in its build
    process. I intended to merge all these submodules in a single scipy_1.10.0.orig-submodules.tar.gz. This tarball is created with a
    script[2] which makes sure that the exact directory structure as it is
    used by upstream is conserved. This directory layout is needed in the
    build process. Unfortunately `dpkg-source -x` extracts the content of
    the submodules tarball into a subdirectory submodules/.

    Is there any trick to unpack this tarball right into the root?
    Otherwise I need to do some symlinks workaround in d/rules to provide
    all files where these are needed.

    Kind regards
    Andreas.

    [1] https://salsa.debian.org/python-team/packages/scipy/-/tree/experimental
    [2] https://salsa.debian.org/python-team/packages/scipy/-/blob/experimental/debian/get-submodules

    --
    http://fam-tille.de

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Julian Gilbey@21:1/5 to Andreas Tille on Mon Jan 16 18:10:01 2023
    XPost: linux.debian.maint.python

    On Mon, Jan 16, 2023 at 05:05:39PM +0100, Andreas Tille wrote:
    Hi,

    I tried to create a multi-source tarball for scipy in its experimental branch[1]. Upstream includes a set of git submodules in its build
    process. I intended to merge all these submodules in a single scipy_1.10.0.orig-submodules.tar.gz. This tarball is created with a script[2] which makes sure that the exact directory structure as it is
    used by upstream is conserved. This directory layout is needed in the
    build process. Unfortunately `dpkg-source -x` extracts the content of
    the submodules tarball into a subdirectory submodules/.

    Is there any trick to unpack this tarball right into the root?
    Otherwise I need to do some symlinks workaround in d/rules to provide
    all files where these are needed.

    Not that I know of; this is the design of the multi-source tarball
    setup: each component tarball is extracted into a directory with the
    name of the component.

    Best wishes,

    Julian

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Soren Stoutner@21:1/5 to All on Mon Jan 16 11:14:24 2023
    This is a multi-part message in MIME format.

    --nextPart2323481.1rrQm6eQnY
    Content-Transfer-Encoding: quoted-printable
    Content-Type: text/plain; charset="UTF-8"

    I haven’t looked closely at it myself, but qtwebengine-opensource-src accomplishes
    something along these lines using `get-orig-source` in their rules file.

    https://salsa.debian.org/qt-kde-team/qt/qtwebengine/-/blob/master/debian/rules[1]

    Note that, in their case, you must have the python3-debian package installed, because the
    script depends on Python for some of the processing.

    On Monday, January 16, 2023 9:27:59 AM MST Julian Gilbey wrote:
    On Mon, Jan 16, 2023 at 05:05:39PM +0100, Andreas Tille wrote:
    Hi,

    I tried to create a multi-source tarball for scipy in its experimental branch[1]. Upstream includes a set of git submodules in its build
    process. I intended to merge all these submodules in a single scipy_1.10.0.orig-submodules.tar.gz. This tarball is created with a script[2] which makes sure that the exact directory structure as it is
    used by upstream is conserved. This directory layout is needed in the build process. Unfortunately `dpkg-source -x` extracts the content of
    the submodules tarball into a subdirectory submodules/.

    Is there any trick to unpack this tarball right into the root?
    Otherwise I need to do some symlinks workaround in d/rules to provide
    all files where these are needed.

    Not that I know of; this is the design of the multi-source tarball
    setup: each component tarball is extracted into a directory with the
    name of the component.

    Best wishes,

    Julian


    --
    Soren Stoutner
    [email protected]

    --------
    [1] https://salsa.debian.org/qt-kde-team/qt/qtwebengine/-/blob/master/debian/rules

    --nextPart2323481.1rrQm6eQnY
    Content-Transfer-Encoding: quoted-printable
    Content-Type: text/html; charset="UTF-8"

    <html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    </head>
    <body><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">I haven’t looked closely at it myself, but qtwebengine-opensource-src accomplishes something along these lines using `get-orig-source` in their rules file.</p>
    <br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;"><a href="https://salsa.debian.org/qt-kde-team/qt/qtwebengine/-/blob/master/debian/rules">https://salsa.debian.org/qt-kde-team/qt/qtwebengine/-/blob/master/debian/rules</a></p>
    <br /><p style="margin-top:0;margin-bottom:0;margin-left:0;margin-right:0;">Note that, in their case, you must have the python3-debian package installed, because the script depends
  • From Nick Morrott@21:1/5 to Andreas Tille on Tue Jan 17 22:50:01 2023
    XPost: linux.debian.maint.python

    On Mon, 16 Jan 2023 at 16:06, Andreas Tille <[email protected]> wrote:

    Hi,

    I tried to create a multi-source tarball for scipy in its experimental branch[1]. Upstream includes a set of git submodules in its build
    process. I intended to merge all these submodules in a single scipy_1.10.0.orig-submodules.tar.gz. This tarball is created with a script[2] which makes sure that the exact directory structure as it is
    used by upstream is conserved. This directory layout is needed in the
    build process. Unfortunately `dpkg-source -x` extracts the content of
    the submodules tarball into a subdirectory submodules/.

    Is there any trick to unpack this tarball right into the root?
    Otherwise I need to do some symlinks workaround in d/rules to provide
    all files where these are needed.

    When I packaged firmware-microbit-microbit I wasn't aware of any
    tricks, so I resorted to overriding dh_auto_build to move the
    extracted components into their expected paths before building:

    https://salsa.debian.org/python-team/packages/firmware-microbit-micropython/-/blob/debian/master/debian/rules

    Not sure if this useful, but I thought I'd pass it along in case it helps.

    Cheers,
    Nick

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)