summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxime Gauduin2022-01-30 16:01:51 +0000
committerMaxime Gauduin2022-01-30 16:01:51 +0000
commit33d9d8a85c84849bc5fef325181567ba56e05114 (patch)
treeaffe1dfbea188ace3e3bf6dc9a89088bac545009
parentc96bc45057b0dd0ef9cf8a5e993bafca804070dc (diff)
downloadaur-33d9d8a85c84849bc5fef325181567ba56e05114.tar.gz
upgpkg: 2.1.4.r453.65b5affe-1
-rw-r--r--PKGBUILD58
-rw-r--r--vbam-ffmpeg5.0.patch44
2 files changed, 72 insertions, 30 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 7186e7af3a30..3b9446bc7764 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,13 +6,17 @@ pkgname=(
vbam-sdl
vbam-wx
)
-pkgver=2.1.4
-pkgrel=3
+pkgver=2.1.4.r453.65b5affe
+pkgrel=1
pkgdesc='Nintendo GameBoy Advance emulator'
arch=(x86_64)
url=https://vba-m.com
license=(GPL2)
depends=(
+ libavcodec.so
+ libavformat.so
+ libavutil.so
+ libswscale.so
libgl
libpng
sdl2
@@ -24,43 +28,41 @@ makedepends=(
ffmpeg
git
libglvnd
+ ninja
wxgtk3
zip
)
-source=(git+https://github.com/visualboyadvance-m/visualboyadvance-m.git#tag=8f4862de88de2f95866b7e501304f1e57a4e0abb?signed)
-sha256sums=(SKIP)
+#_tag=8f4862de88de2f95866b7e501304f1e57a4e0abb
+_commit=65b5affe7ddd87653362d1bb1cb3da7979762b92
+#source=(git+https://github.com/visualboyadvance-m/visualboyadvance-m.git?signed#tag=${_tag})
+source=(
+ git+https://github.com/visualboyadvance-m/visualboyadvance-m.git#commit=${_commit}
+ vbam-ffmpeg5.0.patch
+)
+b2sums=('SKIP'
+ 'c24813fab7a155ac0711e4c5764148d45dae8c1a57938fd8ce253368c31f7d91c2c912f5b0da48c70952f990449315489f175e0894d9f4a75efc53a3e6abd162')
validpgpkeys=(A0C0E526E36FD2138C149D4D08AB596679D86240) # Rafael Kitover <rkitover@gmail.com>
-pkgver() {
+prepare() {
cd visualboyadvance-m
-
- git describe --tags | sed 's/^v//'
+ patch -Np1 -i ../vbam-ffmpeg5.0.patch
}
-prepare() {
- for p in sdl wx; do
- if [[ -d build-$p ]]; then
- rm -rf build-$p
- fi
- mkdir build-$p
- done
+pkgver() {
+ cd visualboyadvance-m
+ git describe --tags | sed 's/^v//; s/-/.r/; s/-g/./'
}
build() {
- cd build-sdl
-
- cmake ../visualboyadvance-m \
- -DCMAKE_BUILD_TYPE=Release \
+ cmake -S visualboyadvance-m -B build-sdl -G Ninja \
+ -DCMAKE_BUILD_TYPE='' \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SKIP_RPATH=TRUE \
-DENABLE_SDL=TRUE \
-DENABLE_WX=FALSE \
-DENABLE_LINK=TRUE
- make
-
- cd ../build-wx
-
- cmake ../visualboyadvance-m \
+ cmake --build build-sdl
+ cmake -S visualboyadvance-m -B build-wx -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SKIP_RPATH=TRUE \
@@ -69,31 +71,27 @@ build() {
-DENABLE_FFMPEG=TRUE \
-DENABLE_LINK=TRUE \
-DwxWidgets_CONFIG_EXECUTABLE=/usr/bin/wx-config-gtk3
- make
+ cmake --build build-wx
}
package_vbam-sdl() {
backup=(etc/vbam.cfg)
conflicts=(vbam-wx)
- make DESTDIR="${pkgdir}" -C build-sdl install
+ DESTDIR="${pkgdir}" cmake --install build-sdl
}
package_vbam-wx() {
depends+=(
glib2
gtk3
- libavcodec.so
- libavformat.so
- libavutil.so
- libswscale.so
openal
wxgtk3
zip
)
conflicts=(vbam-sdl)
- make DESTDIR="${pkgdir}" -C build-wx install
+ DESTDIR="${pkgdir}" cmake --install build-wx
}
# vim: ts=2 sw=2 et:
diff --git a/vbam-ffmpeg5.0.patch b/vbam-ffmpeg5.0.patch
new file mode 100644
index 000000000000..be7886f79c35
--- /dev/null
+++ b/vbam-ffmpeg5.0.patch
@@ -0,0 +1,44 @@
+diff --git a/src/common/ffmpeg.cpp b/src/common/ffmpeg.cpp
+index 0c2161ad..55e395b2 100644
+--- a/src/common/ffmpeg.cpp
++++ b/src/common/ffmpeg.cpp
+@@ -99,7 +99,7 @@ recording::MediaRet recording::MediaRecorder::setup_audio_stream()
+ if (!ast) return MRET_ERR_BUFSIZE;
+ ast->id = oc->nb_streams - 1;
+ // audio codec
+- acodec = avcodec_find_encoder(fmt->audio_codec);
++ const AVCodec* acodec = avcodec_find_encoder(fmt->audio_codec);
+ if (!acodec) return MRET_ERR_NOCODEC;
+ // audio codec context
+ aenc = avcodec_alloc_context3(acodec);
+@@ -254,7 +254,7 @@ recording::MediaRet recording::MediaRecorder::setup_video_stream(int width, int
+ st->id = oc->nb_streams - 1;
+ st->time_base = { 1, STREAM_FRAME_RATE };
+ // video codec
+- vcodec = avcodec_find_encoder(fmt->video_codec);
++ const AVCodec* vcodec = avcodec_find_encoder(fmt->video_codec);
+ if (!vcodec) return MRET_ERR_FMTGUESS;
+ // codec context
+ enc = avcodec_alloc_context3(vcodec);
+@@ -510,7 +510,7 @@ recording::MediaRet recording::MediaRecorder::setup_common(const char *fname)
+ {
+ avformat_alloc_output_context2(&oc, NULL, NULL, fname);
+ if (!oc) return MRET_ERR_BUFSIZE;
+- fmt = oc->oformat;
++ const AVOutputFormat* fmt = oc->oformat;
+ return MRET_OK;
+ }
+
+diff --git a/src/common/ffmpeg.h b/src/common/ffmpeg.h
+index 1f981693..3bcbb588 100644
+--- a/src/common/ffmpeg.h
++++ b/src/common/ffmpeg.h
+@@ -20,6 +20,7 @@ extern "C" {
+ #define UINT64_C(c) (c ## ULL)
+ #endif
+
++#include <libavcodec/avcodec.h>
+ #include <libavformat/avformat.h>
+ #include <libavutil/avassert.h>
+ #include <libavutil/channel_layout.h>
+