ZXTune: add recipe

This commit is contained in:
Gerasim Troeglazov
2021-11-16 16:13:03 +10:00
parent e38874c42e
commit 6ec24efdbb
4 changed files with 486 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,153 @@
resource app_flags B_MULTIPLE_LAUNCH;
resource app_version {
major = @MAJOR@,
middle = 0,
minor = 0,
variety = B_APPV_FINAL,
internal = 0,
short_info = "ZXTune",
long_info = "@LONG_INFO@"
};
resource app_signature "@APP_SIGNATURE@";
resource("QT:QPA_FLAGS") "Q_REF_TO_ARGV|Q_REF_TO_FORK";
resource file_types message {
"types" = "audio"
};
resource vector_icon {
$"6E63696606050003FF000003FEFF3A0300FF3C0300FFFF0400631C0606FF07B8"
$"88C334B888C334B888C40CB8884FB888C4E3B8D94FB97A4FB92A4FB97BC4E3B9"
$"7BC333B97BC40BB92AC334B888C334B8D9C334B888C334C334000CC59BC168C5"
$"9BC168C478C1F4C4DBC468C4F3C369C4DCC519C4DEC67CC4D4C5CBC4E8C716C6"
$"12C79DC576C7A1C761C7A3C9FFC79EC8B0C79DC9FEC739C9FCC66FC9FDC6D4C8"
$"D1C669C67CC665C7A6C67DC5D4C63CC607C4DAC61AC559C75AC4DAC9FEC4DAC8"
$"ACC4DAC9F7C3F7C9F1C232CA0DC313C9C8C193C88AC147C923C14AC791C15CC5"
$"9BC168C68FC129C59BC168000FBFBDC14BBFBDC14BBFBDC195BFBFC22ABFBEC1"
$"DFBFAAC3FABFBAC79EBFB7C5CDC01DC79FC0E6C79FC082C79FC0E9C5E8C0ECC2"
$"7BC0DEC431C194C27EC2E2C28CC23DC26BC329C294C341C317C340C2DBC34EC3"
$"F9C345C5BFC342C4DCC345C65FC345C79EC345C6FEC3AAC79EC476C79FC410C7"
$"9EC475C6AAC475C4C0C475C5B5C474C3FEC473C27CC47CC33DC474C1E1C350C1"
$"51C3E9C157C26AC140C09EC14AC184C150C053C14ABFBDC14BC008C14BBFBDC1"
$"4B0005BC17C13ABC17C13ABC18C2BABC174FBC17C43ABC684FBD094FBCB94FBD"
$"09C43BBD09C13ABD08C2BABCB9C13ABC17C13ABC68C13ABC17C13A000ABA34C1"
$"4BBA34C14BBA32C2E4BA32C616BA33C47D3253355432543554BEF0C79FBDBDC7"
$"9BBEF2C60CBEF3C155BEF2C1DB3DC14FBDC4C147BE29C14BBDC1C2303BC66E3B"
$"C59FBCFBC66BBB6CC63C37C68CBB58C497BB62C14BBB6748BAFDC14BBA34C14B"
$"BA98C14BBA34C14B040C3E2FFD293D2951B68BC566B69CC7172C54B737C7AF2C"
$"5431315131512F51B7E0C612B841C6B7B7C3C4E12C4731442C44B81D442CC06E"
$"2C3D2CBF772B3DB6A33DB709BE8DB6A33D0005C214BD2BC214BD2BC1EEBE4CC2"
$"04C097C20FBF73C276C097C35CC097C2E9C097C35DBF7AC361BD3E49BE5BC30C"
$"BCDBC214BD2BC269BCAFC214BD2B0005BCEDBE37BCEDBE37BDA0BE38BF03BE38"
$"BE51BE38BF1BBD46BF70BB60BEB5BC25BF21BB08BEF6BA24BEFFBA98BE4ABB81"
$"BCEDBE37BD9BBCDBBCEDBE37001DBFB9B70ABFB9B70ABFB8B827BFBCBA63BFAC"
$"B946BFBEBAB1C034BB18C00ABADEC04FBB2FC084BB5CC069BB45C03ABBBABFB7"
$"BC88BFABBBFFBFAEBDDABFB4C07EBFBFBF2CC03CC080C14CC080C0C4C080C14D"
$"BF71C14CBD55C147BE64C13EBCCDC215BC2DC1C9BC87C27DBC2DC34BBC2EC2E4"
$"BC2DC38CBC6FC410BCF3C3CEBCB1C410BD54C410BE19C410BDB7C410BEE6C410"
$"C081C410BFB4C497C080C5A6C080C51FC080C5A4BF35C5A4BC9FC5A5BDEAC5A4"
$"BC82C5A4BC28C5A4BC46C562BBE5C4DDBB5FC520BBA3C52BBB03C5A632C5BEBA"
$"BBC5A6B921C5A6B709C5A3B815C570B709C505B70AC53BB70AC4B5B709C414B7"
$"07C464B708C412B74CC410B7D7C411B792C410B87BC40FB9C3C41AB91FC3DCBA"
$"15C34CBA98C38DBA52C2E4BA98C216BA98C27DBA98C1E3BA66C17FB9FFC1B1BA"
$"32C176BA06C164BA16C16DBA0EC134B914C14CB709C14DB80DC0C5B709BFB9B7"
$"0AC03FB709BFB9B70A000DB9CDB709B9CDB709B9CDB78EB9CEB897B9CDB812BA"
$"DAB89ABCF3B89ABBE6B898BC00BA5EBA1DBDE6BB13BC24B998BEAFB9C2C08AB9"
$"E2BFA9B9C7C085B9D3C07BB9CDC080BB88C085BEF3C07EBD3DC07FBEF3BFFBBE"
$"F33EBEF3BF77BDDEBEEEBBB4BEDEBCC8BF00BBF4BEA1BC3EBE02BC16BE4FBD12"
$"BC52BEC3B8F7BDECBAA5BF10B85DBEEEB709BEEEB7ADBD38B70AB9CDB709BB83"
$"B709B9CDB709002BB922B6C6B922B6C6B942B671B9F4B653B99FB64CBC46B64B"
$"C0EAB651BE98B65BC14EB64DC1F8B6C4C1CEB656C213B7ABC1FDB97EC1FBB895"
$"C21EB99EC261B9E0C240B9C0C29CB9E1C312B9E2C2D7B9E2C3B9B8F5C36CB6B8"
$"C324B7C1C3B2B62EC4E3B64EC465B658C561B655C651B6CAC61AB633C66BB7FA"
$"C65DBA5DC657B92CC66BBAC4C5EFBB5FC624BB11C621BBACC65CBC5AC666BBF7"
$"C661BDC4C65EC099C659BF2EC747C09BC91AC0A0C831C08BC9FCC0C3CAB3C283"
$"CAB6C19DCAB8C34FCAB0C4EACABCC41DCAB2C53DCA13C58CCA66C58AC8EDC5A4"
$"C6A0C5A4C7C5C57CC7E1C5EDCA70C5DDC934C587CAE7C666CAAAC7DBCAB2C736"
$"CA6B56C90FC858C99AC84DC7BCC845C517C821C661C882C469C861C2F1C83FC3"
$"A4C871C28EC817C290C749C291C7A1C290C5EDC291C334C292C490C240C334C1"
$"9FC334C1EFC334C19BC4B0C19BC7A8C1A6C62CC1A1C820C0B6C856C121C864BF"
$"0FC84FBBC0C857BD67C85ABB4DC858BA6DC821BADCC83CB992C873B7C1C853B8"
$"A5C857B6B8C84BB5ECC647B5DAC74DB5EFC3B0B5F0BE83B5E7C119B5ECBE12B6"
$"C4BDD3B65CBDC8B753BDDBB875BE35B81BBDA1B89EBEFCB887C095B881BFCBB8"
$"B7C096B917C099B8E7C098B926BFA6B963BDC0B8DEBE9BBA31BC46BBC5B94EBA"
$"F9BAC9BB0DB94BB99FB944BA56B959B94BB93AB919B890B915B8E1B910B7F8B9"
$"22B6C6B90BB75DB922B6C60608FF7FC634C2A1C634C2A1C683C286C728C275C6"
$"D6C27DC7ABC27EC8B2C2B0C83DC267C8D5C321C8D5C40EC8CDC399C7E6C411C6"
$"06C40FC6F6C410C607C3E6C608C369C607C393C610C326C634C2A1C61AC2E0C6"
$"34C2A1C2A1020CB9CDB709B9CDB709BB83B709BEEEB709BD38B70ABEEEB7ADBE"
$"C3B8F7BF10B85DBDECBAA5BC3EBE02BD12BC52BC16BE4FBBB4BEDEBBF4BEA1BB"
$"17BF6CB9D3C07BBA6FBFEBB9CDC080B9C2C08AB9C7C085B9E2BFA9BA1DBDE6B9"
$"98BEAFBB13BC24BCF3B89ABC00BA5EBBE6B898B9CEB897BADAB89AB9CDB812B9"
$"CDB709B9CDB78EB9CDB709B9CDB709B9CDB709B9CDB7090607FF1FBFB9B70ABF"
$"B9B70AC03FB709C14CB709C0C5B709C14DB80DC164BA16C134B914C100BA6DC0"
$"34BB18C09ABAC2C00ABADEBFBCBA63BFBEBAB1BFACB946BFB9B70ABFB8B827BF"
$"B9B70AB70A0605FF01C414B707C414B707C464B708C505B70AC4B5B709C4B4B7"
$"4FC410B7D7C462B793C411B792C414B707C412B74CC414B707B7070607FF1FB6"
$"A33DB6A33DB709BE8DB7D3BE8DB76EBE8DB7D3BF76B7D3C14AB7D4C060B828C1"
$"4AB8D2C14BB87DC14BB819C1EAB6A4C322B75EC285B6A3C19BB6A33DB6A5C014"
$"B6A33D3D0218C505B70AC505B70AC53BB70AC5A6B709C570B709C5A3B815C5A6"
$"32C5A6B921C5BEBABBC4DDBB5FC52BBB03C520BBA3C5A4BC28C562BBE5C5A4BC"
$"46C5A4BC9FC5A4BC82C51EBD1DC410BE19C498BD9CC410BDB7C410BCF3C410BD"
$"54C3CEBCB1C34BBC2EC38CBC6FC2E4BC2DC215BC2DC27DBC2DC1C9BC87C14CBD"
$"55C13EBCCDC147BE64C14CC080C14DBF71C0C4C080BFB4C07EC03CC080BFBFBF"
$"2CBFB7BC88BFAEBDDABFABBBFFC084BB5CC03ABBBAC069BB45C034BB18C04FBB"
$"2FC09ABAC2C164BA16C100BA6DC16DBA0EC17FB9FFC176BA06C1B1BA32C216BA"
$"98C1E3BA66C27DBA98C34CBA98C2E4BA98C38DBA52C40FB9C3C3DCBA15C41AB9"
$"1FC410B7D7C410B87BC462B793C505B70AC4B4B74FC505B70AC505B70AC505B7"
$"0AC505B70A0606FF07B9D3C07BB9D3C07BBA6FBFEBBBB4BEDEBB17BF6CBCC8BF"
$"00BEF33EBDDEBEEEBEF3BF77BEF3C07EBEF3BFFBBD3DC07FB9D3C07BBB88C085"
$"B9D3C07BC07B020CB8D2C14BB8D2C14BB926C14BB9CDC14AB979C14BB9CDC1B0"
$"B9CDC27BB9CDC215B925C27BB7D4C27BB87DC27BB7DBC3ADB7E0C612B7C3C4E1"
$"B841C6B7B9CDC670B930C654B9CDC6D4B9CEC79EB9CEC73AB91FC79DB7C2C79B"
$"B870C7A6B732C793B6A8C680B6AEC711B69DC561B6A4C322B6A8C442B75EC285"
$"B8D2C14BB819C1EAB8D2C14BB8D2C14BB8D2C14BB8D2C14B0607FF1FBA34C14B"
$"BA34C14BBA98C14BBB62C14BBAFDC14BBB6748BB6CC63CBB58C497BB13C68ABA"
$"61C727BABAC6D9BA46C6CEBA32C616BA2FC674BA33C47DBA34C14BBA32C2E4BA"
$"34C14BC14B0606FF07BDC4C147BDC4C147BE29C14BBEF3C1553DC14FBEF2C1DB"
$"BEEAC2E8BEFAC262BE8DC34CBDC3C402BE27C3A63BC319BDC4C147BDC1C230BD"
$"C4C147C1470605FF01BFBDC14BBFBDC14BC008C14BC09EC14AC053C14AC053C1"
$"94BFBFC22AC006C1DCBFBEC1DFBFBDC14BBFBDC195BFBDC14BC14B0606FF07C4"
$"10BE19C410BE19C498BD9CC5A4BC9FC51EBD1DC5A5BDEAC5A6C080C5A4BF35C5"
$"1FC080C410C081C497C080C410BFB4C410BE19C410BEE6C410BE19BE19020DC0"
$"9EC14AC09EC14AC184C150C350C151C26AC140C3E9C157C473C27CC474C1E1C4"
$"7CC33DC475C4C0C474C3FEC410C515C345C5BFC3AAC56AC342C4DCC341C317C3"
$"4EC3F9C340C2DBC2E2C28CC329C294C23DC26BC0ECC27BC194C27EC0DEC431C0"
$"E6C79FC0E9C5E8C082C79FBFBAC79EC01DC79FBFB7C5CDBFBFC22ABFAAC3FAC0"
$"06C1DCC09EC14AC053C194C09EC14AC09EC14AC09EC14AC09EC14A0608FF7FC5"
$"9BC168C59BC168C68FC129C88AC147C791C15CC816C1ADC728C275C7A0C212C6"
$"D6C27DC634C2A1C683C286C61AC2E0C608C369C610C326C5A3C3BFC4DBC468C5"
$"40C413C4F3C369C59BC168C478C1F4C59BC168C1680609FFFF01BDC3C402BDC3"
$"C402BE27C3A6BEEAC2E8BE8DC34CBEFAC47ABEF0C79FBEF2C60CBDBDC79BBB56"
$"C79BBC89C7A734C799BA61C727BAAFC754BABAC6D9BB6CC63CBB13C68A37C68C"
$"3BC66EBCFBC66B3BC59FBDC3C4023BC4D1BDC3C402C4020211C88AC147C88AC1"
$"47C923C14AC9F1C232C9C8C193CA0DC313C9FEC4DAC9F7C3F7C8ACC4DAC607C4"
$"DAC75AC4DAC61AC559C67CC665C5D4C63CC7A6C67DC9FCC66FC8D1C669C9FDC6"
$"D4C9FFC79EC9FEC739C8B0C79DC612C79DC761C7A3C576C7A1C4DEC67CC4E8C7"
$"16C4D4C5CBC4DBC468C4DCC519C540C413C608C369C5A3C3BFC607C393C606C4"
$"0FC607C3E6C6F6C410C8D5C40EC7E6C411C8CDC399C8B2C2B0C8D5C321C83DC2"
$"67C728C275C7ABC27EC7A0C212C88AC147C816C1ADC88AC147C88AC147C88AC1"
$"47C88AC1470606FF07C345C5BFC345C5BFC3AAC56AC475C4C0C410C515C475C5"
$"B5C476C79FC475C6AAC410C79EC345C79EC3AAC79EC345C6FEC345C5BFC345C6"
$"5FC345C5BFC5BF130A050B000102030405060708090A12403BE3000000000000"
$"40507EC474BFC35DE501178300040A000B000102030405060708090A02404E6D"
$"0000000000004065AEC58FBCC4D2F50A00010B02404E6D0000000000004065AE"
$"C58FBCC4D2F50A01010C02404E6D0000000000004065AEC58FBCC4D2F50A0101"
$"0D02404E6D0000000000004065AEC58FBCC4D2F50A01010E02404E6D00000000"
$"00004065AEC58FBCC4D2F50A01010F02404E6D0000000000004065AEC58FBCC4"
$"D2F50A02011002404E6D0000000000004065AEC58FBCC4D2F50A02011102404E"
$"6D0000000000004065AEC58FBCC4D2F50A02011202404E6D0000000000004065"
$"AEC58FBCC4D2F50A02011302404E6D0000000000004065AEC58FBCC4D2F50A02"
$"011402404E6D0000000000004065AEC58FBCC4D2F50A02011502404E6D000000"
$"0000004065AEC58FBCC4D2F50A03011602404E6D0000000000004065AEC58FBC"
$"C4D2F50A03011702404E6D0000000000004065AEC58FBCC4D2F50A0301180240"
$"4E6D0000000000004065AEC58FBCC4D2F50A03011902404E6D00000000000040"
$"65AEC58FBCC4D2F50A04011A02404E6D0000000000004065AEC58FBCC4D2F50A"
$"04011B02404E6D0000000000004065AEC58FBCC4D2F5"
};

View File

@@ -0,0 +1,244 @@
From 4fc7c1f8c1a6ffce39af7657ea114cec8e5b1d3a Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Tue, 16 Nov 2021 15:46:57 +1000
Subject: Fix build for haiku
diff --git a/3rdparty/openmpt/include/genie/build/gmake.linux/genie.make b/3rdparty/openmpt/include/genie/build/gmake.linux/genie.make
index 88c81a4..92ac36c 100644
--- a/3rdparty/openmpt/include/genie/build/gmake.linux/genie.make
+++ b/3rdparty/openmpt/include/genie/build/gmake.linux/genie.make
@@ -62,7 +62,7 @@ ifeq ($(config),release)
LIBDEPS +=
LDDEPS +=
LDRESP =
- LIBS += $(LDDEPS) -ldl -lm
+ LIBS += $(LDDEPS) -lm
EXTERNAL_LIBS +=
LINKOBJS = $(OBJECTS)
LINKCMD = $(CC) -o $(TARGET) $(LINKOBJS) $(RESOURCES) $(ARCH) $(ALL_LDFLAGS) $(LIBS)
@@ -149,7 +149,7 @@ ifeq ($(config),debug)
LIBDEPS +=
LDDEPS +=
LDRESP =
- LIBS += $(LDDEPS) -ldl -lm
+ LIBS += $(LDDEPS) -lm
EXTERNAL_LIBS +=
LINKOBJS = $(OBJECTS)
LINKCMD = $(CC) -o $(TARGET) $(LINKOBJS) $(RESOURCES) $(ARCH) $(ALL_LDFLAGS) $(LIBS)
diff --git a/3rdparty/openmpt/include/premake/Bootstrap.mak b/3rdparty/openmpt/include/premake/Bootstrap.mak
index 1ee29ba..f4450f5 100644
--- a/3rdparty/openmpt/include/premake/Bootstrap.mak
+++ b/3rdparty/openmpt/include/premake/Bootstrap.mak
@@ -78,7 +78,7 @@ linux: $(SRC)
$(SILENT) rm -rf ./build
$(SILENT) rm -rf ./obj
mkdir -p build/bootstrap
- $(CC) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I"$(LUA_DIR)" -I"$(LUASHIM_DIR)" $? -lm -ldl -lrt
+ $(CC) -o build/bootstrap/premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS -DLUA_USE_POSIX -DLUA_USE_DLOPEN -I"$(LUA_DIR)" -I"$(LUASHIM_DIR)" $? -lm
./build/bootstrap/premake_bootstrap embed
./build/bootstrap/premake_bootstrap --to=build/bootstrap gmake2
$(MAKE) -C build/bootstrap -j`getconf _NPROCESSORS_ONLN` config=$(CONFIG)
diff --git a/3rdparty/unrar/os.hpp b/3rdparty/unrar/os.hpp
index 21488a8..f3455e5 100644
--- a/3rdparty/unrar/os.hpp
+++ b/3rdparty/unrar/os.hpp
@@ -212,6 +212,12 @@
#endif
#endif
+#if defined(__HAIKU__)
+ #ifndef BIG_ENDIAN
+ #define BIG_ENDIAN
+ #endif
+#endif
+
#endif
typedef const char* MSGID;
diff --git a/apps/zxtune-qt/ui/preferences/Makefile b/apps/zxtune-qt/ui/preferences/Makefile
index 0deee8b..cd7cff0 100644
--- a/apps/zxtune-qt/ui/preferences/Makefile
+++ b/apps/zxtune-qt/ui/preferences/Makefile
@@ -5,7 +5,7 @@ source_dirs := .
ui_files = aym mixer mixing plugins sound saa sid z80 interface preferencesdialog
-ui_files += sound_alsa sound_dsound sound_oss sound_sdl sound_win32
+#ui_files += sound_alsa sound_dsound sound_oss sound_sdl sound_win32
ts_files := ui_preferences
diff --git a/apps/zxtune-qt/ui/preferences/sound.cpp b/apps/zxtune-qt/ui/preferences/sound.cpp
index bb78c89..19fb369 100644
--- a/apps/zxtune-qt/ui/preferences/sound.cpp
+++ b/apps/zxtune-qt/ui/preferences/sound.cpp
@@ -11,11 +11,13 @@
// local includes
#include "sound.h"
#include "sound.ui.h"
+#ifndef __HAIKU__
#include "sound_alsa.h"
#include "sound_dsound.h"
#include "sound_oss.h"
#include "sound_sdl.h"
#include "sound_win32.h"
+#endif
#include "supp/options.h"
#include "ui/tools/parameters_helpers.h"
#include "ui/utils.h"
@@ -135,13 +137,15 @@ namespace
{
backendsList->addItem(ToQString(id));
}
+#ifndef __HAIKU__
AddPage(&UI::AlsaSettingsWidget::Create);
AddPage(&UI::DirectSoundSettingsWidget::Create);
AddPage(&UI::OssSettingsWidget::Create);
AddPage(&UI::SdlSettingsWidget::Create);
AddPage(&UI::Win32SettingsWidget::Create);
+#endif
}
-
+#ifndef __HAIKU__
void AddPage(UI::BackendSettingsWidget* (*factory)(QWidget&))
{
std::unique_ptr<UI::BackendSettingsWidget> wid(factory(*backendGroupBox));
@@ -153,7 +157,7 @@ namespace
SetupPages[id] = wid.release();
}
}
-
+#endif
void SetFrequency(uint_t val)
{
const uint_t* const frq = std::find(FREQUENCES, std::end(FREQUENCES), val);
diff --git a/make/compilers/gcc.mak b/make/compilers/gcc.mak
index 484b894..64ff77f 100644
--- a/make/compilers/gcc.mak
+++ b/make/compilers/gcc.mak
@@ -62,7 +62,7 @@ LDFLAGS = $(LD_MODE_FLAGS) $($(platform).ld.flags) $($(platform).$(arch).ld.flag
#specify endpoint commands
build_obj_cmd_nodeps = $(tools.cxx) $(CXXFLAGS) -c $1 -o $2
-build_obj_cmd = $(build_obj_cmd_nodeps) -MMD
+build_obj_cmd = $(build_obj_cmd_nodeps) -MMD -std=c++17
build_obj_cmd_cc = $(tools.cc) $(CCFLAGS) -std=c99 -c $1 -o $2 -MMD
build_lib_cmd = $(tools.ar) $(ARFLAGS) $2 $1
link_cmd = $(tools.ld) $(LDFLAGS) -o $@ $(OBJECTS) $(RESOURCES) \
@@ -118,4 +118,4 @@ symbolstree: $(target).syms.json
websymbolstree: $(target).syms.json
(cd $(bloat_dir) && $(tools.python) $(tools_dir)/server.py /bloat.json=$(abspath $^))
endif
-endif
\ No newline at end of file
+endif
diff --git a/make/features.mak b/make/features.mak
index 7b7c7ee..73f5e2d 100644
--- a/make/features.mak
+++ b/make/features.mak
@@ -8,10 +8,11 @@ support_ogg = 1
support_flac = 1
support_curl = 1
else ifneq ($(findstring $(platform),linux),)
-support_oss = 1
-support_alsa = 1
+#support_oss = 1
+#support_alsa = 1
#support_sdl = 1
-support_pulseaudio = 1
+#support_pulseaudio = 1
+support_openal = 1
support_mp3 = 1
support_ogg = 1
support_flac = 1
diff --git a/make/platforms/linux.mak b/make/platforms/linux.mak
index fb21959..13dca1b 100644
--- a/make/platforms/linux.mak
+++ b/make/platforms/linux.mak
@@ -6,7 +6,7 @@ makeobj_name = $(1).o
host=linux
compiler?=gcc
-libraries.linux += dl rt pthread stdc++
+libraries.linux += stdc++
ifneq ($($(platform).$(arch).crossroot),)
libraries.dirs.linux += $($(platform).$(arch).crossroot)/usr/lib
diff --git a/src/sound/backends/Makefile b/src/sound/backends/Makefile
index f11401d..f9b4b85 100644
--- a/src/sound/backends/Makefile
+++ b/src/sound/backends/Makefile
@@ -28,11 +28,11 @@ source_files += $(1)_stub.cpp
endif
endef
-$(eval $(call declare_native_backend,waveout,win32))
-$(eval $(call declare_native_backend,directsound,dsound))
-$(eval $(call declare_native_backend,alsa,alsa))
-$(eval $(call declare_native_backend,sdl,sdl))
-$(eval $(call declare_native_backend,pulseaudio,paudio))
+#$(eval $(call declare_native_backend,waveout,win32))
+#$(eval $(call declare_native_backend,directsound,dsound))
+#$(eval $(call declare_native_backend,alsa,alsa))
+#$(eval $(call declare_native_backend,sdl,sdl))
+#$(eval $(call declare_native_backend,pulseaudio,paudio))
$(eval $(call declare_native_backend,openal,openal))
ifdef support_aylpt
@@ -41,11 +41,11 @@ else
source_files += aylpt_stub.cpp
endif
-ifdef support_oss
-source_files += oss_backend.cpp
-else
+#ifdef support_oss
+#source_files += oss_backend.cpp
+#else
source_files += oss_stub.cpp
-endif
+#endif
$(eval $(call declare_thirdparty_backend,flac))
$(eval $(call declare_thirdparty_backend,mp3))
diff --git a/src/sound/backends/backends_list.h b/src/sound/backends/backends_list.h
index 867e91d..84a19cc 100644
--- a/src/sound/backends/backends_list.h
+++ b/src/sound/backends/backends_list.h
@@ -31,12 +31,14 @@ namespace Sound
inline void RegisterSystemBackends(BackendsStorage& storage)
{
+#ifndef __HAIKU__
RegisterOssBackend(storage);
RegisterAlsaBackend(storage);
RegisterPulseAudioBackend(storage);
RegisterDirectSoundBackend(storage);
RegisterWin32Backend(storage);
RegisterSdlBackend(storage);
+#endif
RegisterOpenAlBackend(storage);
RegisterAyLptBackend(storage);
}
diff --git a/src/sound/backends/gates/openal_api.h b/src/sound/backends/gates/openal_api.h
index 03d9fe3..03b7639 100644
--- a/src/sound/backends/gates/openal_api.h
+++ b/src/sound/backends/gates/openal_api.h
@@ -13,8 +13,13 @@
//std includes
#include <memory>
//platform-dependent includes
+#ifdef __HAIKU__
+#include <AL/al.h>
+#include <AL/alc.h>
+#else
#include <OpenAL/al.h>
#include <OpenAL/alc.h>
+#endif
namespace Sound
{
--
2.30.2

View File

@@ -0,0 +1,89 @@
SUMMARY="Crossplatform chiptunes player"
DESCRIPTION="Player of computer music from ZX Spectrum, Amiga, Atari, Commodore and more."
HOMEPAGE="https://zxtune.bitbucket.io/"
COPYRIGHT="20082021 Vitamin, CAIG"
LICENSE="GNU GPL v3"
REVISION="1"
srcGitRev="d1e9526f9ca945eff79f09087b4ed75e58f050e7"
SOURCE_URI="https://github.com/vitamin-caig/zxtune/archive/$srcGitRev.tar.gz"
CHECKSUM_SHA256="dfd1929fa365e754f48b8684e352b1973f84ceb5b6517b07db51a5100fe7d548"
SOURCE_DIR="zxtune-${srcGitRev}"
PATCHES="zxtune-$portVersion.patchset"
ADDITIONAL_FILES="
zxtune.rdef.in
icons.zip
"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
zxtune$secondaryArchSuffix = $portVersion
app:ZXTune$secondaryArchSuffix = $portVersion
cmd:zxtune123 = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libboost_filesystem$secondaryArchSuffix
lib:libboost_locale$secondaryArchSuffix
lib:libboost_program_options$secondaryArchSuffix
lib:libboost_system$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libboost_filesystem$secondaryArchSuffix >= 1.69.0
devel:libboost_locale$secondaryArchSuffixx >= 1.69.0
devel:libboost_program_options$secondaryArchSuffix >= 1.69.0
devel:libboost_system$secondaryArchSuffix >= 1.69.0
devel:libopenal$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libQt5Gui$secondaryArchSuffix
devel:libQt5Widgets$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:lrelease$secondaryArchSuffix >= 5
cmd:make
cmd:unzip
cmd:xargs
cmd:zip
"
PATCH()
{
unzip -o $sourceDir/../../additional-files/icons.zip -d \
$sourceDir/apps/zxtune-qt/res/theme_restorer
rm -rf $sourceDir/apps/zxtune-qt/ui/preferences/sound_*
}
BUILD()
{
make platform=linux system.zlib=1 -C apps/zxtune-qt $jobArgs
make platform=linux system.zlib=1 -C apps/zxtune123 $jobArgs
}
INSTALL()
{
mkdir -p $prefix/bin $appsDir
cp bin/linux/release/zxtune-qt $appsDir/ZXTune
cp bin/linux/release/zxtune123 $prefix/bin
local APP_SIGNATURE="application/x-vnd.zxtune"
local MAJOR="`echo "${portVersion:1:4}" | cut -d. -f1`"
local LONG_INFO="$SUMMARY"
sed \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
$portDir/additional-files/zxtune.rdef.in > zxtune.rdef
addResourcesToBinaries zxtune.rdef $appsDir/ZXTune
addAppDeskbarSymlink $appsDir/ZXTune
}