From 4d4a726329c0c7e5e9a5867e9647fd2bbc05ae69 Mon Sep 17 00:00:00 2001 From: Fred Gleason Date: Fri, 18 May 2018 11:46:33 +0000 Subject: [PATCH] 2018-05-18 Fred Gleason * Renamed rdvairplay(1) to rdvairplayd(8). --- .gitignore | 2 +- ChangeLog | 2 ++ Makefile.am | 4 +-- configure.ac | 4 +-- rdcatchd/rdcatchd.cpp | 4 +-- {rdvairplay => rdvairplayd}/Makefile.am | 12 ++++----- {rdvairplay => rdvairplayd}/local_macros.cpp | 4 +-- .../rdvairplayd.cpp | 25 ++++++------------- .../rdvairplay.h => rdvairplayd/rdvairplayd.h | 14 +++++------ rivendell-suse.in | 4 +-- rivendell.spec.in | 4 +-- 11 files changed, 34 insertions(+), 45 deletions(-) rename {rdvairplay => rdvairplayd}/Makefile.am (83%) rename {rdvairplay => rdvairplayd}/local_macros.cpp (99%) rename rdvairplay/rdvairplay.cpp => rdvairplayd/rdvairplayd.cpp (94%) rename rdvairplay/rdvairplay.h => rdvairplayd/rdvairplayd.h (89%) diff --git a/.gitignore b/.gitignore index d6761b78..a3844fd6 100644 --- a/.gitignore +++ b/.gitignore @@ -78,7 +78,7 @@ rdpanel/rdpanel rdrepld/rdrepld rdrepld-suse rdselect/rdselect -rdvairplay/rdvairplay +rdvairplayd/rdvairplayd ripcd/ripcd rivendell rivendell-suse diff --git a/ChangeLog b/ChangeLog index d8358ad8..61efc952 100644 --- a/ChangeLog +++ b/ChangeLog @@ -16848,3 +16848,5 @@ * Added rdvairplay(1) to the 'rivendell' service. 2018-05-17 Fred Gleason * Added rdvairplay(1) to the 'rivendell' package. +2018-05-18 Fred Gleason + * Renamed rdvairplay(1) to rdvairplayd(8). diff --git a/Makefile.am b/Makefile.am index a95944b6..76a88048 100644 --- a/Makefile.am +++ b/Makefile.am @@ -4,7 +4,7 @@ ## ## Use automake to process this into a Makefile.in ## -## (C) Copyright 2002-2016 Fred Gleason +## (C) Copyright 2002-2018 Fred Gleason ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License version 2 as @@ -56,7 +56,7 @@ SUBDIRS = icons\ rdpanel\ rdrepld\ rdselect\ - rdvairplay\ + rdvairplayd\ ripcd\ tests\ utils\ diff --git a/configure.ac b/configure.ac index 59a4f9e9..3ba18441 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ dnl dnl Autoconf configuration for Rivendell. dnl Use autoconf to process this into a configure script dnl -dnl (C) Copyright 2002-2007,2014 Fred Gleason +dnl (C) Copyright 2002-2018 Fred Gleason dnl dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License version 2 as @@ -563,7 +563,7 @@ AC_CONFIG_FILES([rivendell.spec \ rdselect/Makefile \ rdmonitor/Makefile \ rdrepld/Makefile \ - rdvairplay/Makefile \ + rdvairplayd/Makefile \ tests/Makefile \ importers/Makefile \ ios/Makefile \ diff --git a/rdcatchd/rdcatchd.cpp b/rdcatchd/rdcatchd.cpp index a3c54253..b5fa5542 100644 --- a/rdcatchd/rdcatchd.cpp +++ b/rdcatchd/rdcatchd.cpp @@ -309,8 +309,8 @@ MainObject::MainObject(QObject *parent) // Start Subprocesses // if(fork()==0) { - execl(QString(RD_PREFIX)+"/bin/rdvairplay","rdvairplay",(char *)NULL); - rda->log(RDConfig::LogWarning,QString("failed to start rdvairplay(1) [")+ + execl(QString(RD_PREFIX)+"/sbin/rdvairplayd","rdvairplayd",(char *)NULL); + rda->log(RDConfig::LogWarning,QString("failed to start rdvairplayd(1) [")+ strerror(errno)+"]"); exit(1); } diff --git a/rdvairplay/Makefile.am b/rdvairplayd/Makefile.am similarity index 83% rename from rdvairplay/Makefile.am rename to rdvairplayd/Makefile.am index bb79aaf9..c69f9ac3 100644 --- a/rdvairplay/Makefile.am +++ b/rdvairplayd/Makefile.am @@ -1,6 +1,6 @@ ## Makefile.am ## -## Makefile for rdvairplay(1) +## Makefile for rdvairplayd(8) ## ## (C) Copyright 2018 Fred Gleason ## @@ -27,14 +27,14 @@ MOC = @QT_MOC@ moc_%.cpp: %.h $(MOC) $< -o $@ -bin_PROGRAMS = rdvairplay +sbin_PROGRAMS = rdvairplayd -dist_rdvairplay_SOURCES = local_macros.cpp\ - rdvairplay.cpp rdvairplay.h +dist_rdvairplayd_SOURCES = local_macros.cpp\ + rdvairplayd.cpp rdvairplayd.h -nodist_rdvairplay_SOURCES = moc_rdvairplay.cpp +nodist_rdvairplayd_SOURCES = moc_rdvairplayd.cpp -rdvairplay_LDADD = @LIB_RDLIBS@ @LIBVORBIS@ +rdvairplayd_LDADD = @LIB_RDLIBS@ @LIBVORBIS@ CLEANFILES = *~\ *.idb\ diff --git a/rdvairplay/local_macros.cpp b/rdvairplayd/local_macros.cpp similarity index 99% rename from rdvairplay/local_macros.cpp rename to rdvairplayd/local_macros.cpp index f112616d..5d4b58a8 100644 --- a/rdvairplay/local_macros.cpp +++ b/rdvairplayd/local_macros.cpp @@ -1,6 +1,6 @@ // local_macros.cpp // -// Local RML Macros for the Rivendell's RDvAirPlay +// Local RML Macros for rdvairplayd(8) // // (C) Copyright 2002-2004,2016-2018 Fred Gleason // @@ -25,7 +25,7 @@ #include #include -#include "rdvairplay.h" +#include "rdvairplayd.h" void MainObject::rmlReceivedData(RDMacro *rml) { diff --git a/rdvairplay/rdvairplay.cpp b/rdvairplayd/rdvairplayd.cpp similarity index 94% rename from rdvairplay/rdvairplay.cpp rename to rdvairplayd/rdvairplayd.cpp index 236783c0..b5aeb8c5 100644 --- a/rdvairplay/rdvairplay.cpp +++ b/rdvairplayd/rdvairplayd.cpp @@ -1,6 +1,6 @@ -// rdvairplay.cpp +// rdvairplayd.cpp // -// Headless RDAirPlay +// Headless log player // // (C) Copyright 2018 Fred Gleason // @@ -35,7 +35,7 @@ #include #include -#include "rdvairplay.h" +#include "rdvairplayd.h" bool global_exiting=false; @@ -55,16 +55,6 @@ MainObject::MainObject(QObject *parent) { QString err_msg; - // - // Ensure Single Instance - // - air_lock=new RDInstanceLock(QString().sprintf("%s/.rdvairplaylock", - (const char *)RDHomeDir())); - if(!air_lock->lock()) { - fprintf(stderr,"rdvairplay: multiple instances not allowed\n"); - exit(1); - } - // // Ensure that system daemons are running // @@ -78,9 +68,9 @@ MainObject::MainObject(QObject *parent) // // Open the Database // - rda=new RDApplication("rdvairplay","rdvairplay",RDVAIRPLAY_USAGE,this); + rda=new RDApplication("rdvairplayd","rdvairplayd",RDVAIRPLAYD_USAGE,this); if(!rda->open(&err_msg)) { - fprintf(stderr,"rdvairplay: %s\n",(const char *)err_msg); + fprintf(stderr,"rdvairplayd: %s\n",(const char *)err_msg); exit(1); } air_previous_exit_code=rda->airplayConf()->virtualExitCode(); @@ -91,7 +81,7 @@ MainObject::MainObject(QObject *parent) // for(unsigned i=0;icmdSwitch()->keys();i++) { if(!rda->cmdSwitch()->processed(i)) { - fprintf(stderr,"rdvairplay: unknown command option \"%s\"\n", + fprintf(stderr,"rdvairplayd: unknown command option \"%s\"\n", (const char *)rda->cmdSwitch()->key(i)); exit(2); } @@ -354,8 +344,7 @@ void MainObject::exitData() delete air_logs[i]; } rda->airplayConf()->setVirtualExitCode(RDAirPlayConf::ExitClean); - rda->log(RDConfig::LogInfo,"RDVAirPlay exiting"); - air_lock->unlock(); + rda->log(RDConfig::LogInfo,"exiting"); exit(0); } } diff --git a/rdvairplay/rdvairplay.h b/rdvairplayd/rdvairplayd.h similarity index 89% rename from rdvairplay/rdvairplay.h rename to rdvairplayd/rdvairplayd.h index 14ae3371..373e472f 100644 --- a/rdvairplay/rdvairplay.h +++ b/rdvairplayd/rdvairplayd.h @@ -1,6 +1,6 @@ -// rdvairplay.h +// rdvairplayd.h // -// Headless RDAirPlay +// Headless log player // // (C) Copyright 2018 Fred Gleason // @@ -18,20 +18,19 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // -#ifndef RDVAIRPLAY_H -#define RDVAIRPLAY_H +#ifndef RDVAIRPLAYD_H +#define RDVAIRPLAYD_H #include #include #include -#include #include #include #include #include -#define RDVAIRPLAY_USAGE "[options]\n" +#define RDVAIRPLAYD_USAGE "[options]\n" class MainObject : public QObject { @@ -56,7 +55,6 @@ class MainObject : public QObject int air_start_lines[RD_RDVAIRPLAY_LOG_QUAN]; bool air_start_starts[RD_RDVAIRPLAY_LOG_QUAN]; std::vector air_plugin_hosts; - RDInstanceLock *air_lock; RDEventPlayer *air_event_player; QSocketDevice *air_nownext_socket; QDateTime air_startup_datetime; @@ -65,4 +63,4 @@ class MainObject : public QObject }; -#endif // RDVAIRPLAY_H +#endif // RDVAIRPLAYD_H diff --git a/rivendell-suse.in b/rivendell-suse.in index fa62bd32..febbe225 100755 --- a/rivendell-suse.in +++ b/rivendell-suse.in @@ -2,7 +2,7 @@ ## ## Rivendell init script for LSB and chkconfig(8) compliant Linux systems. ## -## (C) Copyright 2002-2006,2016 Fred Gleason +## (C) Copyright 2002-2018 Fred Gleason ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of version 2 of the GNU General Public License as @@ -78,7 +78,7 @@ function StartDaemons { function StopDaemons { killall rdimport > /dev/null 2> /dev/null - killall rdvairplay > /dev/null 2> /dev/null + killall rdvairplayd > /dev/null 2> /dev/null if [ -f /var/run/rivendell/rdcatchd.pid ] ; then kill `cat /var/run/rivendell/rdcatchd.pid` > /dev/null 2> /dev/null fi diff --git a/rivendell.spec.in b/rivendell.spec.in index 5b4591b4..16269172 100644 --- a/rivendell.spec.in +++ b/rivendell.spec.in @@ -1,7 +1,7 @@ ## rivendell.spec.in ## ## The Rivendell Radio Automation System -## Copyright (C) 2002-2016 Fred Gleason +## Copyright (C) 2002-2018 Fred Gleason ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of version 2 of the GNU General Public License as @@ -251,7 +251,6 @@ rm -rf $RPM_BUILD_ROOT @LOCAL_PREFIX@/@RD_LIB_PATH@/rivendell/*.rlm @LOCAL_PREFIX@/bin/rdadmin @LOCAL_PREFIX@/bin/rdairplay -@LOCAL_PREFIX@/bin/rdvairplay @LOCAL_PREFIX@/bin/rdpanel @LOCAL_PREFIX@/bin/rdcartslots @LOCAL_PREFIX@/bin/rdcatch @@ -414,6 +413,7 @@ rm -rf $RPM_BUILD_ROOT @LOCAL_PREFIX@/@RD_LIB_PATH@/librd.la @LOCAL_PREFIX@/@RD_LIB_PATH@/librd.so %attr(4755,root,root) @LOCAL_PREFIX@/bin/caed +@LOCAL_PREFIX@/sbin/rdvairplayd /etc/init.d/rivendell %config /etc/sysconfig/rivendell @HPI_FILE1@