Skip to content

Conversation

@jnbr
Copy link
Contributor

@jnbr jnbr commented Jun 27, 2018

Local builds completed without error for i686, x86_64 and x86_64-musl so far.
I did some basic testing on x86_64.

@jnbr
Copy link
Contributor Author

jnbr commented Jun 28, 2018

The remaining local builds for aarch64, armv7l and armv6l on both, glibc and musl, completed without error.

@pullmoll
Copy link
Member

This PR looks good to me. I'd like to see some review from @void-linux/pkg-committers though.

@jnbr
Copy link
Contributor Author

jnbr commented Jun 30, 2018

If someone want's to test this without building everything, packages are available here: https://jnbr.me/repo/ffmpeg/

@pullmoll
Copy link
Member

FYI building this PR locally and will, if noone objects, push after a successful build.

@pullmoll
Copy link
Member

pullmoll commented Jun 30, 2018

transcode is missing from the list and it doesn't build out of the box, i.e. needs a patch.

ffmpeg_cfg.c:96:22: error: 'FF_DEFAULT_QUANT_BIAS' undeclared here (not in a function)…

I guess this is similar to other patches and will try to create one or rather not. There is a patch for ffmpeg3 which probably should be replaced with one for ffmpeg4 then.

I don't know which macros changed from 3 to 4 and how to go on from here. In case you have spare time I'd be happy to leave trying to patch that one to you :)

@pullmoll
Copy link
Member

Also xpra is missing a revbump for ffmpeg-4.0.1. It seems to build without problems.

@aescling
Copy link
Contributor

aescling commented Jun 30, 2018

Shouldn't mpv be updated to 0.28.2?
Anyway I'm building it locally and seeing if it at least works on x86_64 glibc.

(Edit: it built fine)

@jnbr
Copy link
Contributor Author

jnbr commented Jun 30, 2018

I added the bump for xpra and a patch from archlinux for transcode.

@pullmoll
Copy link
Member

pullmoll commented Jul 1, 2018

Thanks. It seems some more missing packages are libfreerdp, deepin-movie-reborn, deepin-music, deepin-voice-recorder and dolphin-emu. They are blocking the *-stagedata from being resolved here. Other than that the PR seems to build ok.

@pullmoll
Copy link
Member

pullmoll commented Jul 1, 2018

Ok, revbumping them seems sufficient to get my index updated again. phew :)

@jnbr
Copy link
Contributor Author

jnbr commented Jul 1, 2018

deepin-movie-reborn fails for aarch64, checking the remaining ones currently. Also scrcpy and mgba were missing.

@jnbr
Copy link
Contributor Author

jnbr commented Jul 1, 2018

I've set deepin-movie-reborn as broken for aarch64*. I don't get why it fails to link against ffmpegthumbnailer:

/builddir/.xbps-deepin-movie-reborn/wrappers/aarch64-linux-gnu-c++  -D_FORTIFY_SOURCE=2  -O2 -pipe -march=armv8-a -D_GLIBCXX_USE_CXX11_ABI=0  -I/usr/aarch64-linux-gnu/usr/include -std=c++11 -O3 -DNDEBUG  -Wl,-z,relro -Wl,-z,now -Wl,--as-needed     -L/usr/aarch64-linux-gnu/usr/lib -rdynamic CMakeFiles/deepin-movie.dir/common/actions.cpp.o CMakeFiles/deepin-movie.dir/common/dbus_adpator.cpp.o CMakeFiles/deepin-movie.dir/common/dmr_settings.cpp.o CMakeFiles/deepin-movie.dir/common/event_monitor.cpp.o CMakeFiles/deepin-movie.dir/common/event_relayer.cpp.o CMakeFiles/deepin-movie.dir/common/mainwindow.cpp.o CMakeFiles/deepin-movie.dir/common/options.cpp.o CMakeFiles/deepin-movie.dir/common/settings_translation.cpp.o CMakeFiles/deepin-movie.dir/common/shortcut_manager.cpp.o CMakeFiles/deepin-movie.dir/common/thumbnail_worker.cpp.o CMakeFiles/deepin-movie.dir/common/utility_x11.cpp.o CMakeFiles/deepin-movie.dir/widgets/burst_screenshots_dialog.cpp.o CMakeFiles/deepin-movie.dir/widgets/dmr_lineedit.cpp.o CMakeFiles/deepin-movie.dir/widgets/movie_progress_indicator.cpp.o CMakeFiles/deepin-movie.dir/widgets/movieinfo_dialog.cpp.o CMakeFiles/deepin-movie.dir/widgets/notification_widget.cpp.o CMakeFiles/deepin-movie.dir/widgets/playlist_widget.cpp.o CMakeFiles/deepin-movie.dir/widgets/slider.cpp.o CMakeFiles/deepin-movie.dir/widgets/tip.cpp.o CMakeFiles/deepin-movie.dir/widgets/titlebar.cpp.o CMakeFiles/deepin-movie.dir/widgets/toolbox_proxy.cpp.o CMakeFiles/deepin-movie.dir/widgets/toolbutton.cpp.o CMakeFiles/deepin-movie.dir/widgets/url_dialog.cpp.o CMakeFiles/deepin-movie.dir/libdmr/compositing_manager.cpp.o CMakeFiles/deepin-movie.dir/libdmr/dvd_utils.cpp.o CMakeFiles/deepin-movie.dir/libdmr/movie_configuration.cpp.o CMakeFiles/deepin-movie.dir/libdmr/online_sub.cpp.o CMakeFiles/deepin-movie.dir/libdmr/player_backend.cpp.o CMakeFiles/deepin-movie.dir/libdmr/player_engine.cpp.o CMakeFiles/deepin-movie.dir/libdmr/player_widget.cpp.o CMakeFiles/deepin-movie.dir/libdmr/playlist_model.cpp.o CMakeFiles/deepin-movie.dir/libdmr/utils.cpp.o CMakeFiles/deepin-movie.dir/main.cpp.o CMakeFiles/deepin-movie.dir/backends/mpv/mpv_glwidget.cpp.o CMakeFiles/deepin-movie.dir/backends/mpv/mpv_proxy.cpp.o CMakeFiles/deepin-movie.dir/qrc_resources.cpp.o CMakeFiles/deepin-movie.dir/deepin-movie_autogen/mocs_compilation.cpp.o  -o deepin-movie -lX11 -lXext -lXtst /usr/aarch64-linux-gnu/usr/lib/libQt5Widgets.so.5.10.1 /usr/aarch64-linux-gnu/usr/lib/libQt5X11Extras.so.5.10.1 /usr/aarch64-linux-gnu/usr/lib/libQt5Network.so.5.10.1 /usr/aarch64-linux-gnu/usr/lib/libQt5Concurrent.so.5.10.1 /usr/aarch64-linux-gnu/usr/lib/libQt5DBus.so.5.10.1 /usr/aarch64-linux-gnu/usr/lib/libQt5Sql.so.5.10.1 -lpthread -lGL -lffmpegthumbnailer -lpulse-simple -lpulse -lssl -lcrypto -ldvdnav -lpthread -lGL -lffmpegthumbnailer -lpulse-simple -lpulse -lssl -lcrypto -ldvdnav -lxcb-util -lxcb-ewmh -lxcb -lxcb-shape /usr/aarch64-linux-gnu/usr/lib/libQt5Gui.so.5.10.1 /usr/aarch64-linux-gnu/usr/lib/libQt5Core.so.5.10.1 -ldtkwidget -ldtkcore -lmpv -lavformat -lavutil -lavcodec -lavresample 
/usr/aarch64-linux-gnu/usr/lib/libQt5Network.so.5.10.1: warning: EVP_CipherFinal is often misused, please use EVP_CipherFinal_ex and EVP_CIPHER_CTX_cleanup
/usr/aarch64-linux-gnu/usr/lib/libQt5Network.so.5.10.1: warning: EVP_CipherFinal is often misused, please use EVP_CipherFinal_ex and EVP_CIPHER_CTX_cleanup
/usr/aarch64-linux-gnu/usr/lib/libQt5Network.so.5.10.1: warning: EVP_CipherFinal is often misused, please use EVP_CipherFinal_ex and EVP_CIPHER_CTX_cleanup
CMakeFiles/deepin-movie.dir/common/thumbnail_worker.cpp.o: In function `dmr::ThumbnailWorker::genThumb(QUrl const&, int)':
thumbnail_worker.cpp:(.text+0xdb4): undefined reference to `ffmpegthumbnailer::VideoThumbnailer::setSeekTime(std::string const&)'
thumbnail_worker.cpp:(.text+0xec0): undefined reference to `ffmpegthumbnailer::VideoThumbnailer::generateThumbnail(std::string const&, ThumbnailerImageTypeEnum, std::vector<unsigned char, std::allocator<unsigned char> >&, AVFormatContext*)'
CMakeFiles/deepin-movie.dir/libdmr/playlist_model.cpp.o: In function `dmr::PlaylistModel::calculatePlayInfo(QUrl const&, QFileInfo const&)':
playlist_model.cpp:(.text+0x555c): undefined reference to `ffmpegthumbnailer::VideoThumbnailer::generateThumbnail(std::string const&, ThumbnailerImageTypeEnum, std::vector<unsigned char, std::allocator<unsigned char> >&, AVFormatContext*)'
collect2: error: ld returned 1 exit status

@Johnnynator
Copy link
Member

Mkay. That is the same issue that arm* has. I didn't have a clue what was going wrong when packageing deepin-movie-reborn and still don't have any.

@pullmoll
Copy link
Member

pullmoll commented Jul 1, 2018

mpd needs an update, as it was revbumped for libnfs.so.12.

@jnbr
Copy link
Contributor Author

jnbr commented Jul 1, 2018

The ffmpegthumbnailer rebuild changed the symbol table, before it was:

/usr/aarch64-linux-gnu/usr/bin/objdump -TC /usr/aarch64-linux-gnu/usr/lib/libffmpegthumbnailer.so|grep setSeekTime
000000000000a7b4 g    DF .text	0000000000000008  Base        ffmpegthumbnailer::VideoThumbnailer::setSeekTime(std::string const&)

and the new one looks like this:

/usr/aarch64-linux-gnu/usr/bin/objdump -TC /usr/aarch64-linux-gnu/usr/lib/libffmpegthumbnailer.so.4|grep setSeekTime
000000000000a298 g    DF .text	0000000000000008  Base        ffmpegthumbnailer::VideoThumbnailer::setSeekTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)

Maybe that's a problem.

@pullmoll
Copy link
Member

pullmoll commented Jul 1, 2018

For deepin-movie-reborn perhaps the CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" is the culprit.

@jnbr
Copy link
Contributor Author

jnbr commented Jul 1, 2018

I rebased and bumped mpd

@Johnnynator
Copy link
Member

Johnnynator commented Jul 1, 2018

@pullmoll I added this flag to fix another issue, but yes it is the issue. I will revisit it once this PR is merged. (Or maybe earlier, at least it is a not critical issue)

@pullmoll pullmoll closed this in 8813461 Jul 1, 2018
@pullmoll
Copy link
Member

pullmoll commented Jul 1, 2018

@Johnnynator worked around it by not setting it for aarch64*, so at least aarch64 won't keep the *-stagedata forever.

@Johnnynator
Copy link
Member

Ok. I forgot that it would cause a lot of staging on aarch64.

@pullmoll
Copy link
Member

pullmoll commented Jul 2, 2018

@chneukirchen aarch64* needs a host arch (x86_64) build of at least qt5 please.

@pullmoll
Copy link
Member

pullmoll commented Jul 2, 2018

Oops.. That revbump for handbrake was not necessary. I was misled by the missing "ffmpeg-4.0.1" name in the commit message ;-P

@Gottox
Copy link
Member

Gottox commented Jul 2, 2018

@pullmoll just wait till x64_64 finishes, we restart the builder on aarch64 afterwards.

@pullmoll
Copy link
Member

pullmoll commented Jul 2, 2018

@Gottox does aarch64* now use the x86_64 repo? It used to build its own packages for the host.

Now the no longer existing kfilemetata package is keeping staged packages from being moved to the index. If kfilemetadata package cannot be removed, perhaps create a dummy symlink kfilemetadata5 -> kfilemetadata?

@Gottox
Copy link
Member

Gottox commented Jul 2, 2018

Cleanup is in progress.

@pullmoll
Copy link
Member

pullmoll commented Jul 2, 2018

For kodi-rpi the patch is rather long. Here's what I have so far
I have no time to finish it now - need 🍻

@jnbr
Copy link
Contributor Author

jnbr commented Jul 3, 2018

@pullmoll
Copy link
Member

pullmoll commented Jul 3, 2018

Thank you @jnbr - I think that will fix arm* at least :)

@jnbr jnbr deleted the ffmpeg branch July 19, 2018 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants