new package: audacity

This commit is contained in:
Tee KOBAYASHI 2022-04-29 11:45:39 +09:00 committed by xtkoba
parent 9811a2c2bf
commit e2caa73c20
10 changed files with 191 additions and 0 deletions

View File

@ -0,0 +1,18 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -226,6 +226,7 @@
message( STATUS "Building for 32-bit target" )
endif()
+if( FALSE )
# Check for compiler flags
if( CMAKE_CXX_COMPILER_ID MATCHES "AppleClang|Clang|GNU" )
check_cxx_compiler_flag( "-mmmx" HAVE_MMX )
@@ -255,6 +256,7 @@
set( SSE2_FLAG "/arch:SSE2" )
endif()
endif()
+endif( FALSE )
check_include_files( "float.h;stdarg.h;stdlib.h;string.h" STDC_HEADERS )

View File

@ -0,0 +1,36 @@
TERMUX_PKG_HOMEPAGE=https://www.audacityteam.org/
TERMUX_PKG_DESCRIPTION="An easy-to-use, multi-track audio editor and recorder"
TERMUX_PKG_LICENSE="GPL-2.0"
TERMUX_PKG_MAINTAINER="@termux"
# Version 3.0.0 or higher does not work with vanilla wxWidgets.
TERMUX_PKG_VERSION=2.4.2
TERMUX_PKG_SRCURL=https://github.com/audacity/audacity/archive/Audacity-${TERMUX_PKG_VERSION}.tar.gz
TERMUX_PKG_SHA256=cdb4800c8e9d1d4ca19964caf8d24000f80286ebd8a4db566c2622449744c099
TERMUX_PKG_DEPENDS="glib, gtk3, libc++, libexpat, libflac, libmp3lame, libogg, libsndfile, libsoxr, libvorbis, wxwidgets, zlib"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
-Daudacity_use_wxwidgets=system
-Daudacity_use_expat=system
-Daudacity_use_lame=system
-Daudacity_use_sndfile=system
-Daudacity_use_soxr=system
-Daudacity_use_portaudio=local
-Daudacity_use_ffmpeg=off
-Daudacity_use_id3tag=off
-Daudacity_use_mad=off
-Daudacity_use_nyquist=local
-Daudacity_use_vamp=off
-Daudacity_use_ogg=system
-Daudacity_use_vorbis=system
-Daudacity_use_flac=system
-Daudacity_use_lv2=off
-Daudacity_use_midi=off
-Daudacity_use_portmixer=local
-Daudacity_use_portsmf=off
-Daudacity_use_sbsms=off
-Daudacity_use_soundtouch=off
-Daudacity_use_twolame=off
"
termux_step_pre_configure() {
CPPFLAGS+=" -Dushort=u_short -Dulong=u_long"
}

View File

@ -0,0 +1,29 @@
--- a/cmake-proxies/portaudio-v19/CMakeLists.txt
+++ b/cmake-proxies/portaudio-v19/CMakeLists.txt
@@ -56,7 +56,7 @@
"Use the portaudio CoreAudio interface if available"
YES
)
- elseif( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD" )
+ elseif( CMAKE_SYSTEM_NAME MATCHES "Android|Linux|FreeBSD" )
cmd_option(
${_OPT}use_pa_alsa
"Use the portaudio ALSA interface if available"
@@ -118,7 +118,7 @@
${TARGET_ROOT}/src/hostapi/coreaudio/pa_mac_core_utilities.c
>
- $<$<PLATFORM_ID:Darwin,Linux,FreeBSD,CYGWIN>:
+ $<$<PLATFORM_ID:Darwin,Android,Linux,FreeBSD,CYGWIN>:
${TARGET_ROOT}/src/os/unix/pa_unix_hostapis.c
${TARGET_ROOT}/src/os/unix/pa_unix_util.c
>
@@ -158,7 +158,7 @@
${TARGET_ROOT}/src/os/win
>
- $<$<PLATFORM_ID:Darwin,Linux,FreeBSD,CYGWIN>:
+ $<$<PLATFORM_ID:Darwin,Android,Linux,FreeBSD,CYGWIN>:
${TARGET_ROOT}/src/os/unix
>

View File

@ -0,0 +1,29 @@
--- a/cmake-proxies/portmidi/CMakeLists.txt
+++ b/cmake-proxies/portmidi/CMakeLists.txt
@@ -3,7 +3,7 @@
def_vars()
-if( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD" )
+if( CMAKE_SYSTEM_NAME MATCHES "Android|Linux|FreeBSD" )
if( ${_OPT}use_pa_alsa )
find_package( ALSA )
endif()
@@ -29,7 +29,7 @@
${TARGET_ROOT}/porttime/ptmacosx_mach.c
>
- $<$<PLATFORM_ID:Linux,FreeBSD,CYGWIN>:
+ $<$<PLATFORM_ID:Android,Linux,FreeBSD,CYGWIN>:
${TARGET_ROOT}/pm_linux/finddefault.c
${TARGET_ROOT}/pm_linux/pmlinux.c
${TARGET_ROOT}/porttime/ptlinux.c
@@ -53,7 +53,7 @@
${TARGET_ROOT}/pm_mac
>
- $<$<PLATFORM_ID:Linux,FreeBSD>:
+ $<$<PLATFORM_ID:Android,Linux,FreeBSD>:
${TARGET_ROOT}/pm_linux
>
)

View File

@ -0,0 +1,11 @@
--- a/cmake-proxies/wxWidgets/CMakeLists.txt
+++ b/cmake-proxies/wxWidgets/CMakeLists.txt
@@ -99,7 +99,7 @@
# Causes problems on OSX, so turn it off
set( wxBUILD_PRECOMP NO )
- elseif( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD" )
+ elseif( CMAKE_SYSTEM_NAME MATCHES "Android|Linux|FreeBSD" )
# Doesn't yet have accessbility
set( wxUSE_ACCESSIBILITY NO )

View File

@ -0,0 +1,12 @@
--- a/lib-src/libnyquist/nyquist/cmt/midifns.c
+++ b/lib-src/libnyquist/nyquist/cmt/midifns.c
@@ -118,7 +118,9 @@
#ifdef UNIX
#ifndef UNIX_IRIX
#include "sys/time.h"
+#ifndef __ANDROID__
#include "sys/timeb.h"
+#endif
#include "cmtio.h"
#else
#include <sys/types.h>

View File

@ -0,0 +1,20 @@
--- a/src/AudacityApp.cpp
+++ b/src/AudacityApp.cpp
@@ -964,7 +964,7 @@
#define WL(lang,sublang)
#endif
-#if wxCHECK_VERSION(3, 0, 1)
+#if wxCHECK_VERSION(3, 0, 1) && !defined __ANDROID__
wxLanguageInfo userLangs[] =
{
// Bosnian is defined in wxWidgets already
@@ -1270,7 +1270,7 @@
//
// TODO: The whole Language initialization really need to be reworked.
// It's all over the place.
-#if wxCHECK_VERSION(3, 0, 1)
+#if wxCHECK_VERSION(3, 0, 1) && !defined __ANDROID__
for (size_t i = 0, cnt = WXSIZEOF(userLangs); i < cnt; i++)
{
wxLocale::AddLanguage(userLangs[i]);

View File

@ -0,0 +1,10 @@
--- a/src/AudioIOBase.cpp
+++ b/src/AudioIOBase.cpp
@@ -21,6 +21,7 @@
#include "prefs/RecordingPrefs.h"
#include "widgets/MeterPanelBase.h"
+#include "portaudio.h"
#if USE_PORTMIXER
#include "portmixer.h"
#endif

View File

@ -0,0 +1,15 @@
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1090,9 +1090,9 @@
$<$<BOOL:${USE_SBSMS}>:sbsms>
$<$<BOOL:${USE_SOUNDTOUCH}>:soundtouch>
$<$<BOOL:${USE_VAMP}>:libvamp>
- $<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:PkgConfig::GLIB>
- $<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:PkgConfig::GTK>
- $<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:z>
+ $<$<PLATFORM_ID:Android,Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:PkgConfig::GLIB>
+ $<$<PLATFORM_ID:Android,Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:PkgConfig::GTK>
+ $<$<PLATFORM_ID:Android,Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:z>
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD,NetBSD,CYGWIN>:pthread>
)

View File

@ -0,0 +1,11 @@
--- a/src/MixerBoard.cpp
+++ b/src/MixerBoard.cpp
@@ -1304,7 +1304,7 @@
wxMemoryDC dc;
for (const auto &data : table) {
- auto bmp = std::make_unique<wxBitmap>(data.bitmap,24);
+ auto bmp = std::make_unique<wxBitmap>(data.bitmap);
dc.SelectObject(*bmp);
AColor::Bevel(dc, false, bev);
mMusicalInstruments.push_back(std::make_unique<MusicalInstrument>(