aboutsummaryrefslogtreecommitdiff
path: root/audio/orpheus/files
diff options
context:
space:
mode:
authorSergey Matveychuk <sem@FreeBSD.org>2005-04-10 09:16:14 +0000
committerSergey Matveychuk <sem@FreeBSD.org>2005-04-10 09:16:14 +0000
commit8360ab3d50019495b3fe2496f28c058452bed599 (patch)
tree901c82c9491f38770ee7922442858bf61e1b887c /audio/orpheus/files
parent0acf0e892fc5932a63918d69757dc5632952c8e5 (diff)
downloadports-8360ab3d50019495b3fe2496f28c058452bed599.tar.gz
ports-8360ab3d50019495b3fe2496f28c058452bed599.zip
Notes
Diffstat (limited to 'audio/orpheus/files')
-rw-r--r--audio/orpheus/files/patch-configure.in35
-rw-r--r--audio/orpheus/files/patch-src-abstract-track.h10
-rw-r--r--audio/orpheus/files/patch-src-cdtrack.cc359
-rw-r--r--audio/orpheus/files/patch-src-cdtrack.h20
-rw-r--r--audio/orpheus/files/patch-src-mixerctl.cc11
-rw-r--r--audio/orpheus/files/patch-src-orpheius.cc11
-rw-r--r--audio/orpheus/files/patch-src-uitext.cc31
7 files changed, 477 insertions, 0 deletions
diff --git a/audio/orpheus/files/patch-configure.in b/audio/orpheus/files/patch-configure.in
new file mode 100644
index 000000000000..e7dbf4bcdd27
--- /dev/null
+++ b/audio/orpheus/files/patch-configure.in
@@ -0,0 +1,35 @@
+diff -Nru orpheus-1.5/configure.in orpheus-1.5.1/configure.in
+--- configure.in Wed Mar 10 22:48:14 2004
++++ configure.in Mon Apr 4 11:43:05 2005
+@@ -11,14 +11,24 @@
+
+ AC_CHECK_LIB(ncurses, main,, AC_CHECK_LIB(curses, main,, AC_MSG_ERROR(The ncurses terminal library is required in order to build the program)))
+
+-AC_CHECK_LIB(ghttp, ghttp_request_new,,
+- [AC_MSG_WARN(libghttp not found - the support for CDDB is be disabled)])
++AC_ARG_ENABLE(ghttp,
++ [ --enable-ghttp enable HTTP proxy support for CDDB],
++ [if test "$enableval" = yes; then
++ AC_CHECK_LIB(ghttp,ghttp_request_new,,AC_ERROR([cannot locate ghttp library]))
++ fi])
+
+-AC_CHECK_LIB(vorbis, vorbis_synthesis_headerin,,
+- AC_MSG_WARN(libvorbisfile not found - the support for OGG tags edit is disabled))
+-
+-AC_CHECK_LIB(vorbisfile, ov_open,,
+- AC_MSG_WARN(libvorbis not found - the support for OGG files is disabled))
++AC_ARG_ENABLE(vorbis,
++ [ --enable-vorbis enable OGG tags edit support],
++ [if test "$enableval" = yes; then
++ AC_CHECK_LIB(vorbis, vorbis_synthesis_headerin,,AC_ERROR([cannot locate vorbis library]))
++ AC_CHECK_LIB(vorbisfile, ov_open,,AC_ERROR([cannot locate vorbisfile library]))
++ fi])
++
++AC_ARG_ENABLE(vorbis,
++ [ --enable-vorbisfile enable OGG files support],
++ [if test "$enableval" = yes; then
++ AC_CHECK_LIB(vorbisfile, ov_open,,AC_ERROR([cannot locate vorbisfile library]))
++ fi])
+
+ AM_ICONV_LINK
+
diff --git a/audio/orpheus/files/patch-src-abstract-track.h b/audio/orpheus/files/patch-src-abstract-track.h
new file mode 100644
index 000000000000..dfbdc85d7a70
--- /dev/null
+++ b/audio/orpheus/files/patch-src-abstract-track.h
@@ -0,0 +1,10 @@
+--- src/abstract/track.h Sat Feb 14 15:51:46 2004
++++ src/abstract/track.h Tue Dec 14 01:03:50 2004
+@@ -5,6 +5,7 @@
+
+ #include <vector>
+ #include <fstream>
++#include <sys/types.h>
+
+ class track {
+ public:
diff --git a/audio/orpheus/files/patch-src-cdtrack.cc b/audio/orpheus/files/patch-src-cdtrack.cc
new file mode 100644
index 000000000000..9a171a279a7f
--- /dev/null
+++ b/audio/orpheus/files/patch-src-cdtrack.cc
@@ -0,0 +1,359 @@
+--- src/cdtrack.cc Sat Feb 14 20:11:05 2004
++++ src/cdtrack.cc Sun Dec 12 21:55:58 2004
+@@ -42,6 +42,7 @@
+ int cdfd = -1, numtracks;
+ string cddbquery, cdid, cdtitle;
+ bool ejected = false;
++#define CDROM_LEADOUT 0xAA
+
+ struct istracknumber: public binary_function<int, const track*, bool> {
+ public: bool operator()(int n, const track *c) const {
+@@ -58,51 +59,56 @@
+ // ----------------------------------------------------------------------------
+
+ void cdtrack::play() {
+- struct cdrom_ti n;
+- n.cdti_trk0 = number;
+- n.cdti_trk1 = number;
++ struct ioc_play_track n;
++ memset (&n, 0, sizeof (struct ioc_play_track));
++ n.start_track = number;
++ n.end_track = number;
+
+- if(!ioctl(cdfd, CDROMPLAYTRKIND, &n)) {
++ if(!ioctl(cdfd, CDIOCPLAYTRACKS, &n)) {
+ paused = false;
+- }
++ }
+ }
+
+ void cdtrack::pause() {
+ if(paused) {
+- ioctl(cdfd, CDROMRESUME);
++ ioctl(cdfd, CDIOCRESUME);
+ paused = false;
+
+- } else if(ioctl(cdfd, CDROMPAUSE) != -1) {
++ } else if(ioctl(cdfd, CDIOCPAUSE) != -1) {
+ paused = true;
+
+- }
++ }
+ }
+
+ void cdtrack::stop() {
+- if(ioctl(cdfd, CDROMSTOP) != -1) {
+- }
++ if(ioctl(cdfd, CDIOCSTOP) != -1) {
++ }
+ }
+
+ string cdtrack::getdescription() const {
+- return (string) "(cd) " + i2str(number) + ". " + title;
++ return (string) "(cd) " + i2str(number) + ". " + title;
+ }
+
+ vector<string> cdtrack::getstatus() const {
+ vector<string> r;
+- struct cdrom_subchnl subc;
++ struct ioc_read_subchannel subc;
++ struct cd_sub_channel_info data;
+ char buf[64];
+ OrpheusPlayList::iterator it;
+ string sb;
+
+- subc.cdsc_format = CDROM_MSF;
++ subc.address_format = CD_MSF_FORMAT;
++ subc.data = &data;
++ subc.data_len = sizeof(data);
++
+
+- if(ioctl(cdfd, CDROMSUBCHNL, &subc) != -1) {
++ if(ioctl(cdfd, CDIOCREADSUBCHANNEL, &subc) != -1) {
+ sprintf(buf, _("track %d [%02d:%02d]"), number,
+- subc.cdsc_reladdr.msf.minute, subc.cdsc_reladdr.msf.second);
++ subc.data->what.position.reladdr.msf.minute, subc.data->what.position.reladdr.msf.second);
+
+ r.push_back("CD: " + cdtitle + "; " + buf);
+
+- it = find_if(plist.begin(), plist.end(), bind1st(istracknumber(), subc.cdsc_trk));
++ it = find_if(plist.begin(), plist.end(), bind1st(istracknumber(), subc.data->what.position.track_number));
+
+ if(it != plist.end()) {
+ cdtrack *ct = static_cast<cdtrack *>(*it);
+@@ -112,92 +118,100 @@
+ }
+ }
+
+- return r;
++ return r;
+ }
+
+ bool cdtrack::terminated() const {
+ double nframes, lframe;
+- struct cdrom_subchnl subc;
++ struct ioc_read_subchannel subc;
++ struct cd_sub_channel_info data;
+ int ptime;
+
+- subc.cdsc_format = CDROM_MSF;
+-
+- if(ioctl(cdfd, CDROMSUBCHNL, &subc) != -1) {
+- return
+- subc.cdsc_audiostatus != CDROM_AUDIO_PLAY &&
+- subc.cdsc_audiostatus != CDROM_AUDIO_PAUSED;
++ subc.address_format = CD_MSF_FORMAT;
++ subc.data_format = CD_CURRENT_POSITION;
++ subc.data = &data;
++ subc.data_len= sizeof(data);
++
++ if(ioctl(cdfd, CDIOCREADSUBCHANNEL, &subc) != -1) {
++ return
++ subc.data->header.audio_status != CD_AS_PLAY_IN_PROGRESS &&
++ subc.data->header.audio_status != CD_AS_PLAY_PAUSED;
+ }
+
+ return true;
+ }
+
+ void cdtrack::fwd(bool big) {
+- playseconds(big ? 40 : 4);
++ playseconds(big ? 40 : 4);
+ }
+
+ void cdtrack::rwd(bool big) {
+- playseconds(big ? -40 : -4);
++ playseconds(big ? -40 : -4);
+ }
+
+ void cdtrack::playseconds(int offset) {
+- struct cdrom_msf msf;
+- struct cdrom_subchnl subc;
+-
+- subc.cdsc_format = CDROM_MSF;
+-
+- if(ioctl(cdfd, CDROMSUBCHNL, &subc) != -1) {
+- msf.cdmsf_sec0 = subc.cdsc_absaddr.msf.second+offset;
+- msf.cdmsf_min0 = subc.cdsc_absaddr.msf.minute;
+- msf.cdmsf_frame0 = subc.cdsc_absaddr.msf.frame;
+- msf.cdmsf_min1 = toc.cdte_addr.msf.minute;
+- msf.cdmsf_sec1 = toc.cdte_addr.msf.second;
+- msf.cdmsf_frame1 = toc.cdte_addr.msf.frame;
+-
+- if(msf.cdmsf_sec0 > 60 && (offset < 0)) {
+- msf.cdmsf_sec0 = 60-abs(offset);
+- msf.cdmsf_min0--;
++ struct ioc_play_msf msf;
++ struct ioc_read_subchannel subc;
++ struct cd_sub_channel_info data;
++
++ subc.address_format = CD_MSF_FORMAT;
++ subc.data = &data;
++ subc.data_len = sizeof(data);
++
++
++ if(ioctl(cdfd, CDIOCREADSUBCHANNEL, &subc) != -1) {
++ msf.start_s = subc.data->what.position.absaddr.msf.second+offset;
++ msf.start_m = subc.data->what.position.absaddr.msf.minute;
++ msf.start_f = subc.data->what.position.absaddr.msf.frame;
++ msf.end_m = toc.entry.addr.msf.minute;
++ msf.end_s = toc.entry.addr.msf.second;
++ msf.end_f = toc.entry.addr.msf.frame;
++
++ if(msf.start_s > 60 && (offset < 0)) {
++ msf.start_s = 60-abs(offset);
++ msf.start_m--;
+ }
+
+- if(ioctl(cdfd, CDROMPLAYMSF, &msf) != -1) {
++ if(ioctl(cdfd, CDIOCPLAYMSF, &msf) != -1) {
+ }
+- }
++ }
+ }
+
+ void cdtrack::readlength() {
+ signed int start_sec, start_min, end_min, end_sec;
+- struct cdrom_msf msf;
+- struct cdrom_tochdr toch;
++ struct ioc_play_msf msf;
++ struct ioc_toc_header toch;
+
+- toc.cdte_track = number;
+- toc.cdte_format = CDROM_MSF;
++ toc.track = number;
++ toc.address_format = CD_MSF_FORMAT;
+
+- if(ioctl(cdfd, CDROMREADTOCENTRY, &toc) != -1) {
+- start_sec = toc.cdte_addr.msf.second;
+- start_min = toc.cdte_addr.msf.minute;
+-
+- msf.cdmsf_min0 = toc.cdte_addr.msf.minute;
+- msf.cdmsf_sec0 = toc.cdte_addr.msf.second;
+- msf.cdmsf_frame0 = toc.cdte_addr.msf.frame;
+-
+- if(ioctl(cdfd, CDROMREADTOCHDR, &toch) != -1) {
+- if(toch.cdth_trk1 == number) {
+- toc.cdte_track = CDROM_LEADOUT;
++ if(ioctl(cdfd, CDIOREADTOCENTRY, &toc) != -1) {
++ start_sec = toc.entry.addr.msf.second;
++ start_min = toc.entry.addr.msf.minute;
++
++ msf.start_m = toc.entry.addr.msf.minute;
++ msf.start_s = toc.entry.addr.msf.second;
++ msf.start_f = toc.entry.addr.msf.frame;
++
++ if(ioctl(cdfd, CDIOREADTOCHEADER, &toch) != -1) {
++ if(toch.ending_track == number) {
++ toc.track = CDROM_LEADOUT;
+ } else {
+- toc.cdte_track = number+1;
++ toc.track = number+1;
+ }
+
+- if(ioctl(cdfd, CDROMREADTOCENTRY, &toc) != -1) {
+- msf.cdmsf_min1 = toc.cdte_addr.msf.minute;
+- msf.cdmsf_sec1 = toc.cdte_addr.msf.second;
+- msf.cdmsf_frame1 = toc.cdte_addr.msf.frame;
++ if(ioctl(cdfd, CDIOREADTOCENTRY, &toc) != -1) {
++ msf.end_m = toc.entry.addr.msf.minute;
++ msf.end_s = toc.entry.addr.msf.second;
++ msf.end_f = toc.entry.addr.msf.frame;
+
+- end_sec = toc.cdte_addr.msf.second;
+- end_min = toc.cdte_addr.msf.minute;
++ end_sec = toc.entry.addr.msf.second;
++ end_min = toc.entry.addr.msf.minute;
+
+ length = (end_min*60+end_sec)-(start_min*60+start_sec);
+ }
+ }
+- }
++ }
+ }
+
+ void cdtrack::toplaylist(ofstream &f) const {
+@@ -208,7 +222,7 @@
+
+ static bool isourtrack(const track *t) {
+ const cdtrack *cd = dynamic_cast<const cdtrack *>(t);
+- return (cd != 0);
++ return (cd != 0);
+ }
+
+ static int getdbsum(int val) {
+@@ -218,7 +232,7 @@
+ for(i = 0; i < buf.size(); i++)
+ ret += buf[i]-'0';
+
+- return ret;
++ return ret;
+ }
+
+ void cdtrack::cleartracks() {
+@@ -227,15 +241,17 @@
+ while((it = find_if(plist.begin(), plist.end(), isourtrack)) != plist.end()) {
+ delete *it;
+ plist.erase(it);
+- }
++ }
+ }
+
+ void cdtrack::readtracks() {
+ int st_track, lst_track, track, start_sec, start_min, end_sec, end_min;
+ int tracklen, tracksum, disklen, sframe;
+ unsigned int discid;
+- struct cdrom_tocentry toc;
+- struct cdrom_tochdr toch;
++ struct ioc_read_toc_single_entry toc;
++ struct ioc_toc_header toch;
++
++
+ cdtrack *ct;
+ char buf[64];
+
+@@ -248,32 +264,32 @@
+
+ cddbquery = "";
+
+- if(!ioctl(cdfd, CDROMSTART) && !ioctl(cdfd, CDROMREADTOCHDR, &toch)) {
+- st_track = toch.cdth_trk0;
+- lst_track = toch.cdth_trk1;
++ if(!ioctl(cdfd, CDIOCSTART) && !ioctl(cdfd, CDIOREADTOCHEADER, &toch)) {
++ st_track = toch.starting_track;
++ lst_track = toch.ending_track;
+
+- toc.cdte_format = CDROM_MSF;
++ toc.address_format = CD_MSF_FORMAT;
+ tracksum = 0;
+
+ for(track = 1; track <= lst_track; track++) {
+- toc.cdte_track = track;
++ toc.track = track;
+
+- if(ioctl(cdfd, CDROMREADTOCENTRY, &toc) != -1) {
+- start_sec = toc.cdte_addr.msf.second;
+- start_min = toc.cdte_addr.msf.minute;
++ if(ioctl(cdfd, CDIOREADTOCENTRY, &toc) != -1) {
++ start_sec = toc.entry.addr.msf.second;
++ start_min = toc.entry.addr.msf.minute;
+
+- if(toch.cdth_trk1 == track) {
+- toc.cdte_track = CDROM_LEADOUT;
++ if(toch.ending_track == track) {
++ toc.track = CDROM_LEADOUT;
+ } else {
+- toc.cdte_track = track + 1;
++ toc.track = track + 1;
+ }
+
+ sframe = (start_min * 60 + start_sec) * 75
+- + toc.cdte_addr.msf.frame;
++ + toc.entry.addr.msf.frame;
+
+- if(ioctl(cdfd, CDROMREADTOCENTRY, &toc) != -1) {
+- end_sec = toc.cdte_addr.msf.second;
+- end_min = toc.cdte_addr.msf.minute;
++ if(ioctl(cdfd, CDIOREADTOCENTRY, &toc) != -1) {
++ end_sec = toc.entry.addr.msf.second;
++ end_min = toc.entry.addr.msf.minute;
+
+ tracklen = (end_min * 60 + end_sec) - (start_min * 60 + start_sec);
+
+@@ -308,7 +324,7 @@
+ } else {
+ ui.status(_("No CD in the drive!"));
+
+- }
++ }
+ }
+
+ bool cdtrack::loadtracks(const string &fname) {
+@@ -388,7 +404,7 @@
+
+ #endif
+
+- return reply;
++ return reply;
+ }
+
+ void cdtrack::getcddb() {
+@@ -468,15 +484,15 @@
+ ui.update();
+ } else {
+ ui.status(_("Failed to fetch track titles"));
+- }
++ }
+ }
+
+ void cdtrack::eject() {
+ if(cdfd == -1)
+ cdfd = open(conf.getcddevice().c_str(), O_RDONLY | O_NONBLOCK);
+
+- if(ioctl(cdfd, ejected ? CDROMCLOSETRAY : CDROMEJECT) != -1)
+- ejected = !ejected;
++ if(ioctl(cdfd, ejected ? CDIOCALLOW : CDIOCEJECT) != -1)
++ ejected = !ejected;
+ }
+
+ string cdtrack::getcdid() {
diff --git a/audio/orpheus/files/patch-src-cdtrack.h b/audio/orpheus/files/patch-src-cdtrack.h
new file mode 100644
index 000000000000..5edb83d873a8
--- /dev/null
+++ b/audio/orpheus/files/patch-src-cdtrack.h
@@ -0,0 +1,20 @@
+--- src/cdtrack.h Sat Oct 18 14:51:26 2003
++++ src/cdtrack.h Sun Dec 12 18:40:09 2004
+@@ -5,7 +5,7 @@
+
+ #include <string>
+
+-#include <linux/cdrom.h>
++#include <sys/cdio.h>
+ #include <sys/ioctl.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+@@ -15,7 +15,7 @@
+ class cdtrack : public track {
+ private:
+ int length, number;
+- struct cdrom_tocentry toc;
++ struct ioc_read_toc_single_entry toc;
+ string title;
+ bool paused;
+
diff --git a/audio/orpheus/files/patch-src-mixerctl.cc b/audio/orpheus/files/patch-src-mixerctl.cc
new file mode 100644
index 000000000000..0972f2ff901b
--- /dev/null
+++ b/audio/orpheus/files/patch-src-mixerctl.cc
@@ -0,0 +1,11 @@
+--- src/mixerctl.cc Sat Feb 14 20:11:05 2004
++++ src/mixerctl.cc Sun Dec 12 22:08:37 2004
+@@ -50,7 +50,7 @@
+
+ if((fd = ::open(devname.c_str(), O_RDWR)) != -1) {
+ if(ioctl(fd, SOUND_MIXER_READ_DEVMASK, &devmask) != -1) {
+- for(ct = ctVolume; ct != channeltype_end; (int) ct += 1) {
++ for(ct = ctVolume; ct != channeltype_end; ct = (mixerctl::channeltype) (ct + 1)) {
+ if((1 << (int) ct) & devmask) {
+ channels.insert(ct);
+ }
diff --git a/audio/orpheus/files/patch-src-orpheius.cc b/audio/orpheus/files/patch-src-orpheius.cc
new file mode 100644
index 000000000000..92d913b4571f
--- /dev/null
+++ b/audio/orpheus/files/patch-src-orpheius.cc
@@ -0,0 +1,11 @@
+--- src/orpheusconf.cc Sat Feb 14 20:11:05 2004
++++ src/orpheusconf.cc Sun Dec 12 16:03:16 2004
+@@ -34,7 +34,7 @@
+
+ OrpheusConfiguration::OrpheusConfiguration()
+ : dname((string) getenv("HOME") + "/.orpheus"),
+- oggplayer("ogg123 -v"), cddev("/dev/cdrom"),
++ oggplayer("ogg123 -v"), cddev("/cdrom"),
+ mixerdev("/dev/mixer"), cdautofetch(true), russian(false),
+ autosavepl(false), autoplay(true), playmode(Normal),
+ sortorder(noSort), sortasc(true)
diff --git a/audio/orpheus/files/patch-src-uitext.cc b/audio/orpheus/files/patch-src-uitext.cc
new file mode 100644
index 000000000000..72f1651dd0ca
--- /dev/null
+++ b/audio/orpheus/files/patch-src-uitext.cc
@@ -0,0 +1,31 @@
+--- src/uitext.cc Tue Feb 17 04:18:21 2004
++++ src/uitext.cc Sun Dec 12 22:12:41 2004
+@@ -577,14 +577,16 @@
+ autosavepl = !autosavepl;
+ break;
+ case 41:
+- if(++((int) playmode) == PlayMode_size)
++ playmode = (PlayMode) (playmode + 1);
++ if(playmode == PlayMode_size)
+ playmode = Normal;
+ break;
+ case 42:
+ autoplay = !autoplay;
+ break;
+ case 43:
+- if(++((int) sortorder) == SortOrder_size)
++ sortorder = (SortOrder) (sortorder + 1);
++ if(sortorder == SortOrder_size)
+ sortorder = byFileName;
+ break;
+ case 44:
+@@ -719,7 +721,8 @@
+ while(!finished) {
+ m.clear();
+
+- for(ct = mixerctl::ctVolume; ct != mixerctl::channeltype_end; (int) ct += 1) {
++ for(ct = mixerctl::ctVolume; ct != mixerctl::channeltype_end; ct = (mixerctl::channeltype) (ct + 1))
++ {
+ if(chavail.count(ct)) {
+ val = mix.readlevel(ct);
+ if(val >= 0) {