Skip to content
Snippets Groups Projects
Commit 045697c8 authored by Steve Lhomme's avatar Steve Lhomme
Browse files

contrib: update mpg123 to 1.26.2


And remove upstreamed patches.

(cherry picked from commit 877d8301)

Signed-off-by: default avatarSteve Lhomme <robux4@ycbcr.xyz>
parent a8e6a381
No related branches found
No related tags found
No related merge requests found
From 099787a99e7214f068aa61d63befaced516ce254 Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Mon, 25 May 2020 10:43:34 +0200
Subject: [PATCH 1/3] configure: detect WINDOWS_UWP for mingw as well
It is supported as well as with MSVC.
We need to include winapifamily.h to detect UWP builds.
The official way is to use the WINAPI_FAMILY_PARTITION macro which is compatible between MSVC and mingw.
In UWP build we should use UNICODE API.
---
configure.ac | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/configure.ac b/configure.ac
index 4dfe617..917d251 100644
--- a/configure.ac
+++ b/configure.ac
@@ -162,6 +162,23 @@ AC_CHECK_HEADERS([windows.h])
case "$host" in
*-*-mingw*)
win32=yes
+ AC_MSG_CHECKING([if this is a UWP build])
+ AC_PREPROC_IFELSE([AC_LANG_PROGRAM(
+ [[#include <winapifamily.h>
+ #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
+ # error Win32 Desktop build
+ #endif
+ ]],[[;]])
+ ],[
+ uwp_build=yes
+ AC_MSG_RESULT([yes])
+ ],[
+ uwp_build=no
+ AC_MSG_RESULT([no])
+ ])
+ if test x"$uwp_build" = xyes; then
+ AC_DEFINE( [WINDOWS_UWP], 1, [Windows UWP build] )
+ fi
;;
*)
win32=no
@@ -2284,6 +2301,9 @@ dnl We do not support non-unicode Windows.
if test "x$win32_specific_codes" = xenabled; then
#### Check for Wide functions
AC_CHECK_FUNC([_wopen], [win32_unicode=enabled],[win32_unicode=disabled])
+ if test "x$uwp_build" = xyes; then
+ AC_DEFINE([WANT_WIN32_UNICODE], [1], [ Define to use Unicode for Windows ])
+ else
AC_MSG_CHECKING([if we want Unicode File Open for Win32])
if test "x$win32_unicode" = xenabled; then
dnl We need to include the header for PathCombineW checking as
@@ -2331,6 +2351,7 @@ if test "x$win32_specific_codes" = xenabled; then
else
AC_MSG_ERROR([Unicode File Open for Win32 not available])
fi
+ fi
#### Check for Network functions
AC_CHECK_HEADERS([ws2tcpip.h], [win32_sockets=enabled], [AC_MSG_WARN([Please update your headers to support winsock 2.2.])])
--
2.26.0.windows.1
From 8084885e55bdc7e9f05bc25b76b8776a0205193d Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Mon, 25 May 2020 16:27:51 +0200
Subject: [PATCH 2/3] configure: don't error on GetThreadErrorMode if we're not
going to use it
In UWP builds GetThreadErrorMode is not supported (at least not on all Win8/Win10).
But it's still possible to build mpg123 without module handling.
---
configure.ac | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configure.ac b/configure.ac
index 917d251..c494221 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2435,6 +2435,7 @@ if test x$win32_specific_codes = xenabled; then
AC_MSG_RESULT([no])
fi
# Check GetThreadErrorMode
+ if test x"$modules" != xdisabled; then
AC_MSG_CHECKING([if we have GetThreadErrorMode])
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <windows.h>
@@ -2457,6 +2458,7 @@ if test x$win32_specific_codes = xenabled; then
AC_MSG_RESULT([no])
AC_ERROR([GetThreadErrorMode is required but not found])
fi
+ fi
fi
#### WINVER Bump
--
2.26.0.windows.1
From 29604faf999056eb1c5e8e934ef9ceee472c78de Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Mon, 25 May 2020 12:46:56 +0200
Subject: [PATCH 3/3] fix lfs_alias_t type for Android
---
configure.ac | 5 +++--
ports/cmake/src/CMakeLists.txt | 4 ++++
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index c494221..f22047e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1158,6 +1158,7 @@ AC_CHECK_TYPE(uint16_t, unsigned short)
AC_CHECK_SIZEOF(size_t,4)
AC_CHECK_SIZEOF(ssize_t,4)
AC_CHECK_SIZEOF(off_t,4)
+AC_CHECK_SIZEOF(off64_t,8)
AC_CHECK_SIZEOF(int32_t)
AC_CHECK_SIZEOF(long,4)
@@ -1168,8 +1169,8 @@ if test "x$largefile_sensitive" = xyes; then
lfs_alias_type=long
lfs_alias_size=$ac_cv_sizeof_long
else
- lfs_alias_type=off_t
- lfs_alias_size=$ac_cv_sizeof_off_t
+ lfs_alias_type=off64_t
+ lfs_alias_size=$ac_cv_sizeof_off64_t
fi
if test "x$lfs_alias_size" = "x"; then
diff --git a/ports/cmake/src/CMakeLists.txt b/ports/cmake/src/CMakeLists.txt
index 7ea2282..4b7b931 100644
--- a/ports/cmake/src/CMakeLists.txt
+++ b/ports/cmake/src/CMakeLists.txt
@@ -109,6 +109,10 @@ check_type_size(off_t SIZEOF_OFF_T)
if(LFS_SENSITIVE)
set(LFS_ALIAS_TYPE long)
math(EXPR LFS_ALIAS_BITS "${SIZEOF_LONG} * 8")
+elseif(CMAKE_ANDROID_ARCH_ABI)
+ check_type_size(off64_t SIZEOF_OFF64_T)
+ set(LFS_ALIAS_TYPE off64_t)
+ math(EXPR LFS_ALIAS_BITS "${SIZEOF_OFF64_T} * 8")
else()
set(LFS_ALIAS_TYPE off_t)
math(EXPR LFS_ALIAS_BITS "${SIZEOF_OFF_T} * 8")
--
2.26.0.windows.1
0b58b02228f950320fa948fde17730f22a27e7bf6185fe678632281ca230fa5b84358382acb0f1f438631fcdfb93d1dce252d4fbfe616711144f181deb9f2a3e mpg123-1.26.0.tar.bz2
aa63fcb08b243a1e09f7701b3d84a19d7412a87253d54d49f014fdb9e75bbc81d152a41ed750fccde901453929b2a001585a7645351b41845ad205c17a73dcc9 mpg123-1.26.2.tar.bz2
# mpg123
MPG123_VERSION := 1.26.0
MPG123_VERSION := 1.26.2
MPG123_URL := $(SF)/mpg123/mpg123/$(MPG123_VERSION)/mpg123-$(MPG123_VERSION).tar.bz2
PKGS += mpg123
......@@ -37,11 +37,6 @@ $(TARBALLS)/mpg123-$(MPG123_VERSION).tar.bz2:
mpg123: mpg123-$(MPG123_VERSION).tar.bz2 .sum-mpg123
$(UNPACK)
$(APPLY) $(SRC)/mpg123/0001-configure-detect-WINDOWS_UWP-for-mingw-as-well.patch
$(APPLY) $(SRC)/mpg123/0002-configure-don-t-error-on-GetThreadErrorMode-if-we-re.patch
ifdef HAVE_ANDROID
$(APPLY) $(SRC)/mpg123/0003-fix-lfs_alias_t-type-for-Android.patch
endif
# remove generated file from the source package
cd $(UNPACK_DIR) && rm -rf src/libsyn123/syn123.h
$(APPLY) $(SRC)/mpg123/no-programs.patch
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment