Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tools/depends: native build fixes and improvements #22780

Merged
merged 14 commits into from
May 12, 2023

Conversation

lrusak
Copy link
Contributor

@lrusak lrusak commented Feb 15, 2023

inspired by #22773 this fixes the build for native builds and adds some improvements (like using lib instead of lib64).

Should be pretty straight forward. The only one I think that deserves attention is the texturepacker native build. I don't think it's expected for people to have static versions of liblzo2, libgif, libjpeg, etc.

I used the following script to build these:

export PREFIX="$(mktemp -d)"

git clean -e native-build.sh -xfd .

declare -ar DEPS=(
    native/JsonSchemaBuilder
    native/TexturePacker
    target/crossguid
    target/dav1d
    target/flatbuffers
    target/fmt
    target/libdvdcss
    target/libdvdread
    target/libdvdnav
    target/rapidjson
    target/spdlog
    target/wayland-protocols
    target/waylandpp
)

for DEP in "${DEPS[@]}"; do
    make -j$(distcc -j) -C "${DEP}"
    [ "${?}" != "0" ] && exit 1
done

echo "PREFIX: ${PREFIX}"

sample dir:

$ tree -L 2 /tmp/tmp.0cs5gFI646/                                                                                                                                  ✭depends-native-fixes 
/tmp/tmp.0cs5gFI646/
├── bin
│   ├── flatc
│   └── wayland-scanner++
├── include
│   ├── crossguid
│   ├── dav1d
│   ├── flatbuffers
│   ├── fmt
│   ├── rapidjson
│   ├── spdlog
│   ├── wayland-client.hpp
│   ├── wayland-client-protocol-extra.hpp
│   ├── wayland-client-protocol.hpp
│   ├── wayland-cursor.hpp
│   ├── wayland-egl.hpp
│   ├── wayland-util.hpp
│   └── wayland-version.hpp
├── lib
│   ├── cmake
│   ├── libcrossguid.a
│   ├── libdav1d.a
│   ├── libfmt.a
│   ├── libspdlog.a
│   ├── libwayland-client-extra++.so -> libwayland-client-extra++.so.0
│   ├── libwayland-client-extra++.so.0 -> libwayland-client-extra++.so.0.2.8
│   ├── libwayland-client-extra++.so.0.2.8
│   ├── libwayland-client++.so -> libwayland-client++.so.0
│   ├── libwayland-client++.so.0 -> libwayland-client++.so.0.2.8
│   ├── libwayland-client++.so.0.2.8
│   ├── libwayland-cursor++.so -> libwayland-cursor++.so.0
│   ├── libwayland-cursor++.so.0 -> libwayland-cursor++.so.0.2.8
│   ├── libwayland-cursor++.so.0.2.8
│   ├── libwayland-egl++.so -> libwayland-egl++.so.0
│   ├── libwayland-egl++.so.0 -> libwayland-egl++.so.0.2.8
│   ├── libwayland-egl++.so.0.2.8
│   └── pkgconfig
└── share
    ├── crossguid
    ├── pkgconfig
    ├── waylandpp
    └── wayland-protocols

maybe we should add a CI build job for this?

@lrusak lrusak added Type: Fix non-breaking change which fixes an issue Platform: Linux Component: Depends v21 Omega labels Feb 15, 2023
@lrusak lrusak added this to the Omega 21.0 Alpha 1 milestone Feb 15, 2023
Copy link
Contributor

@fuzzard fuzzard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems ok to me.

@lrusak
Copy link
Contributor Author

lrusak commented Mar 4, 2023

@wsnipex all good?

@lrusak lrusak force-pushed the depends-native-fixes branch 2 times, most recently from 0ab1556 to 90a22a9 Compare April 16, 2023 20:28
@lrusak
Copy link
Contributor Author

lrusak commented Apr 16, 2023

squashed the fixup and updated the commit message for 88f761d

@jenkins4kodi jenkins4kodi added the Rebase needed PR that does not apply/merge cleanly to current base branch label Apr 20, 2023
@jenkins4kodi jenkins4kodi added Rebase needed PR that does not apply/merge cleanly to current base branch and removed Rebase needed PR that does not apply/merge cleanly to current base branch labels Apr 20, 2023
… instead)

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
….txt instead)

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
…TIONS

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
…uild

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
Signed-off-by: Lukas Rusak <lorusak@gmail.com>
… build

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
Signed-off-by: Lukas Rusak <lorusak@gmail.com>
Signed-off-by: Lukas Rusak <lorusak@gmail.com>
Signed-off-by: Lukas Rusak <lorusak@gmail.com>
…uild

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
Signed-off-by: Lukas Rusak <lorusak@gmail.com>
…ive build

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
Signed-off-by: Lukas Rusak <lorusak@gmail.com>
@jenkins4kodi jenkins4kodi removed the Rebase needed PR that does not apply/merge cleanly to current base branch label Apr 22, 2023
@lrusak
Copy link
Contributor Author

lrusak commented May 7, 2023

all good?

@lrusak lrusak merged commit 71ca1b8 into xbmc:master May 12, 2023
1 check passed
@neo1973 neo1973 mentioned this pull request Jun 15, 2023
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants