Skip to content

Commit

Permalink
Added --with-qtsingleapplication=[shipped|system] flag to the configu…
Browse files Browse the repository at this point in the history
…re file to comply with Linux distributions that are packaging qtsingleapplication solution.
  • Loading branch information
Christophe Dumez committed Jul 20, 2010
1 parent 5cbcfb8 commit 208e988
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 12 deletions.
71 changes: 62 additions & 9 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,24 @@ Main options:
--help This help text.
Dependency options:
--disable-gui Disable qBittorrent Graphical user
interface for headless running
--with-libboost-inc=[path] Path to libboost include files
--with-libboost-lib=[path] Path to libboost library files
--disable-libnotify Disable use of libnotify
--disable-geoip-database Disable use of geoip-database
--with-geoip-database-embedded Geoip Database will be embedded in
qBittorrent executable (please follow
instructions in src/geoip/README)
--disable-gui Disable qBittorrent
Graphical user interface for
headless running
--with-libboost-inc=[path] Path to libboost include
files
--with-libboost-lib=[path] Path to libboost library
files
--disable-libnotify Disable use of libnotify
--disable-geoip-database Disable use of geoip-database
--with-geoip-database-embedded Geoip Database will be
embedded in qBittorrent
executable (please follow
instructions in
src/geoip/README)
--disable-qtsingleapplication Disable use of libboost
--with-qtsingleapplication=[system|shipped] Use the shipped
qtsingleapplication library
or the system one
EOT
}
Expand Down Expand Up @@ -173,6 +182,16 @@ while [ $# -gt 0 ]; do
shift
;;

--disable-qtsingleapplication)
QC_DISABLE_qtsingleapplication="Y"
shift
;;

--with-qtsingleapplication=*)
QC_WITH_QTSINGLEAPPLICATION=$optarg
shift
;;

--verbose)
QC_VERBOSE="Y"
shift
Expand Down Expand Up @@ -200,6 +219,8 @@ echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB
echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify
echo QC_DISABLE_geoip_database=$QC_DISABLE_geoip_database
echo QC_WITH_GEOIP_DATABASE_EMBEDDED=$QC_WITH_GEOIP_DATABASE_EMBEDDED
echo QC_DISABLE_qtsingleapplication=$QC_DISABLE_qtsingleapplication
echo QC_WITH_QTSINGLEAPPLICATION=$QC_WITH_QTSINGLEAPPLICATION
echo
fi

Expand Down Expand Up @@ -585,6 +606,33 @@ public:
#endif
}
};
#line 1 "qtsingleapplication.qcm"
/*
-----BEGIN QCMOD-----
name: libboost
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
-----END QCMOD-----
*/
class qc_qtsingleapplication : public ConfObj
{
public:
qc_qtsingleapplication(Conf *c) : ConfObj(c) {}
QString name() const { return "qtsingleapplication library"; }
QString shortname() const { return "qtsingleapplication"; }
bool exec(){
QString s;
s = conf->getenv("QC_WITH_QTSINGLEAPPLICATION");
if(s.compare("system", Qt::CaseInsensitive) == 0) {
// System
conf->addDefine("USE_SYSTEM_QTSINGLEAPPLICATION");
printf(" [system] ");
} else {
printf(" [shipped] ");
}
return true;
}
};
EOT
cat >$1/modules_new.cpp <<EOT
Expand All @@ -606,6 +654,9 @@ cat >$1/modules_new.cpp <<EOT
o = new qc_geoip_database(conf);
o->required = false;
o->disabled = false;
o = new qc_qtsingleapplication(conf);
o->required = false;
o->disabled = false;
EOT
cat >$1/conf4.h <<EOT
Expand Down Expand Up @@ -1557,6 +1608,8 @@ export QC_WITH_LIBBOOST_LIB
export QC_DISABLE_libnotify
export QC_DISABLE_geoip_database
export QC_WITH_GEOIP_DATABASE_EMBEDDED
export QC_DISABLE_qtsingleapplication
export QC_WITH_QTSINGLEAPPLICATION
export QC_VERBOSE
rm -rf .qconftemp
(
Expand Down
2 changes: 2 additions & 0 deletions qbittorrent.qc
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,6 @@
</dep>
<dep type='geoip-database'>
</dep>
<dep type='qtsingleapplication'>
</dep>
</qconf>
12 changes: 9 additions & 3 deletions src/src.pro
Original file line number Diff line number Diff line change
Expand Up @@ -342,10 +342,16 @@ contains(DEFINES, DISABLE_GUI) {
}
}

contains(DEFINES, DISABLE_GUI) {
include(qtsingleapp/qtsinglecoreapplication.pri)
contains(DEFINES, USE_SYSTEM_QTSINGLEAPPLICATION) {
message("Using the system's qtsingleapplication library")
CONFIG += qtsingleapplication
} else {
include(qtsingleapp/qtsingleapplication.pri)
message("Using the shipped qtsingleapplication library")
contains(DEFINES, DISABLE_GUI) {
include(qtsingleapp/qtsinglecoreapplication.pri)
} else {
include(qtsingleapp/qtsingleapplication.pri)
}
}

!contains(DEFINES, DISABLE_GUI) {
Expand Down

0 comments on commit 208e988

Please sign in to comment.