2018-02-27 18:06:05 +01:00
# Strawberry Music Player
# Copyright 2013, Jonas Kvinge <jonas@strawbs.net>
#
# Strawberry is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Strawberry is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Strawberry. If not, see <http://www.gnu.org/licenses/>.
set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall" )
2018-05-15 00:25:30 +02:00
set ( CMAKE_CXX_STANDARD 11 )
2019-11-15 00:22:41 +01:00
set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++11 -U__STRICT_ANSI__ -Wall -Wextra -Wpedantic -Woverloaded-virtual -fpermissive" )
2018-02-27 18:06:05 +01:00
2019-11-15 00:22:41 +01:00
if ( APPLE )
set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-parameter" )
2019-09-15 20:27:32 +02:00
endif ( )
2019-07-08 21:59:07 +02:00
option ( BUILD_WERROR "Build with -Werror" OFF )
2018-02-27 18:06:05 +01:00
if ( BUILD_WERROR )
if ( LINUX )
set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror" )
endif ( LINUX )
endif ( BUILD_WERROR )
2019-02-22 20:24:38 +01:00
if ( HAVE_TRANSLATIONS )
include ( ../cmake/Translations.cmake )
endif ( HAVE_TRANSLATIONS )
2018-05-15 00:25:30 +02:00
# Set up definitions and paths
2018-03-31 19:43:28 +02:00
2018-05-15 00:25:30 +02:00
include_directories ( ${ CMAKE_SOURCE_DIR } ${ CMAKE_CURRENT_BINARY_DIR } ${ CMAKE_CURRENT_SOURCE_DIR } )
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
add_definitions ( ${ QT_DEFINITIONS } )
2018-05-10 15:29:28 +02:00
add_definitions ( -DQT_USE_QSTRINGBUILDER )
2018-02-27 18:06:05 +01:00
add_definitions ( -DQT_NO_URL_CAST_FROM_STRING )
add_definitions ( -DBOOST_BIND_NO_PLACEHOLDERS )
include_directories ( ${ CMAKE_BINARY_DIR } )
2019-11-15 00:22:41 +01:00
include_directories ( ${ Boost_INCLUDE_DIRS } )
2018-05-15 00:25:30 +02:00
include_directories ( ${ GLIBCONFIG_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
include_directories ( ${ GLIB_INCLUDE_DIRS } )
2018-02-27 18:06:05 +01:00
include_directories ( ${ GOBJECT_INCLUDE_DIRS } )
2019-04-16 17:48:11 +02:00
include_directories ( ${ GNUTLS_INCLUDE_DIR } )
2018-05-15 00:25:30 +02:00
2019-01-01 20:07:29 +01:00
if ( X11_FOUND )
include_directories ( ${ X11_INCLUDE_DIR } )
endif ( X11_FOUND )
2018-05-15 00:25:30 +02:00
if ( HAVE_GSTREAMER )
link_directories ( ${ GSTREAMER_LIBRARY_DIRS } )
include_directories ( ${ GSTREAMER_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
link_directories ( ${ GSTREAMER_BASE_LIBRARY_DIRS } )
include_directories ( ${ GSTREAMER_BASE_INCLUDE_DIRS } )
link_directories ( ${ GSTREAMER_APP_LIBRARY_DIRS } )
2018-05-15 00:25:30 +02:00
include_directories ( ${ GSTREAMER_APP_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
link_directories ( ${ GSTREAMER_AUDIO_LIBRARY_DIRS } )
2018-05-15 00:25:30 +02:00
include_directories ( ${ GSTREAMER_AUDIO_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
link_directories ( ${ GSTREAMER_TAG_LIBRARY_DIRS } )
2018-05-15 00:25:30 +02:00
include_directories ( ${ GSTREAMER_TAG_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
link_directories ( ${ GSTREAMER_PBUTILS_LIBRARY_DIRS } )
2019-09-07 23:34:13 +02:00
include_directories ( ${ GSTREAMER_PBUTILS_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
endif ( HAVE_GSTREAMER )
2018-05-15 00:25:30 +02:00
if ( HAVE_PHONON )
include_directories ( ${ PHONON_INCLUDE_DIRS } )
2019-11-15 00:22:41 +01:00
endif ( HAVE_PHONON )
if ( HAVE_CHROMAPRINT )
link_directories ( ${ CHROMAPRINT_LIBRARY_DIRS } )
include_directories ( ${ CHROMAPRINT_INCLUDE_DIRS } )
endif ( HAVE_CHROMAPRINT )
if ( HAVE_AUDIOCD )
link_directories ( ${ LIBCDIO_LIBRARY_DIRS } )
include_directories ( ${ LIBCDIO_INCLUDE_DIRS } )
endif ( HAVE_AUDIOCD )
2018-05-15 00:25:30 +02:00
link_directories ( ${ TAGLIB_LIBRARY_DIRS } )
include_directories ( ${ TAGLIB_INCLUDE_DIRS } )
2019-01-12 02:07:39 +01:00
link_directories ( ${ SINGLEAPPLICATION_LIBRARY_DIRS } )
link_directories ( ${ SINGLECOREAPPLICATION_LIBRARY_DIRS } )
2019-01-07 01:00:58 +01:00
include_directories ( ${ SINGLEAPPLICATION_INCLUDE_DIRS } )
2019-01-11 01:04:13 +01:00
include_directories ( ${ SINGLECOREAPPLICATION_INCLUDE_DIRS } )
2018-02-27 18:06:05 +01:00
2019-11-15 00:22:41 +01:00
if ( HAVE_LIBMTP )
link_directories ( ${ LIBMTP_LIBRARY_DIRS } )
include_directories ( ${ LIBMTP_INCLUDE_DIRS } )
endif ( HAVE_LIBMTP )
2018-02-27 18:06:05 +01:00
include_directories ( ${ CMAKE_SOURCE_DIR } /ext/libstrawberry-common )
include_directories ( ${ CMAKE_SOURCE_DIR } /ext/libstrawberry-tagreader )
include_directories ( ${ CMAKE_BINARY_DIR } /ext/libstrawberry-tagreader )
set ( SOURCES
c o r e / m a i n w i n d o w . c p p
c o r e / a p p l i c a t i o n . c p p
c o r e / a p p e a r a n c e . c p p
c o r e / p l a y e r . c p p
c o r e / c o m m a n d l i n e o p t i o n s . c p p
c o r e / d a t a b a s e . c p p
c o r e / m e t a t y p e s . c p p
c o r e / d e l e t e f i l e s . c p p
c o r e / f i l e s y s t e m m u s i c s t o r a g e . c p p
c o r e / f i l e s y s t e m w a t c h e r i n t e r f a c e . c p p
c o r e / m e r g e d p r o x y m o d e l . c p p
c o r e / m u l t i s o r t f i l t e r p r o x y . c p p
c o r e / m u s i c s t o r a g e . c p p
c o r e / n e t w o r k . c p p
2019-08-20 23:31:23 +02:00
c o r e / n e t w o r k t i m e o u t s . c p p
2018-02-27 18:06:05 +01:00
c o r e / n e t w o r k p r o x y f a c t o r y . c p p
c o r e / q t f s l i s t e n e r . c p p
c o r e / s e t t i n g s p r o v i d e r . c p p
c o r e / s i g n a l c h e c k e r . c p p
c o r e / s o n g . c p p
c o r e / s o n g l o a d e r . c p p
2019-04-24 23:43:09 +02:00
c o r e / s t y l e h e l p e r . c p p
2018-02-27 18:06:05 +01:00
c o r e / s t y l e s h e e t l o a d e r . c p p
c o r e / t a g r e a d e r c l i e n t . c p p
c o r e / t a s k m a n a g e r . c p p
c o r e / t h r e a d . c p p
c o r e / u r l h a n d l e r . c p p
c o r e / u t i l i t i e s . c p p
c o r e / s c a n g i o m o d u l e p a t h . c p p
c o r e / i c o n l o a d e r . c p p
c o r e / q t s y s t e m t r a y i c o n . c p p
c o r e / s t a n d a r d i t e m i c o n l o a d e r . c p p
c o r e / s y s t e m t r a y i c o n . c p p
c o r e / s c r e e n s a v e r . c p p
c o r e / s c o p e d t r a n s a c t i o n . c p p
2019-07-22 20:53:05 +02:00
c o r e / t r a n s l a t i o n s . c p p
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
e n g i n e / e n g i n e t y p e . c p p
e n g i n e / e n g i n e b a s e . c p p
2019-11-03 19:53:08 +01:00
e n g i n e / d e v i c e f i n d e r s . c p p
2018-02-27 18:06:05 +01:00
e n g i n e / d e v i c e f i n d e r . c p p
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
a n a l y z e r / f h t . c p p
a n a l y z e r / a n a l y z e r b a s e . c p p
a n a l y z e r / a n a l y z e r c o n t a i n e r . c p p
a n a l y z e r / b l o c k a n a l y z e r . c p p
2019-02-04 21:34:12 +01:00
a n a l y z e r / b o o m a n a l y z e r . c p p
a n a l y z e r / r a i n b o w a n a l y z e r . c p p
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
e q u a l i z e r / e q u a l i z e r . c p p
e q u a l i z e r / e q u a l i z e r s l i d e r . c p p
2018-08-29 21:42:24 +02:00
c o n t e x t / c o n t e x t v i e w . c p p
c o n t e x t / c o n t e x t a l b u m s m o d e l . c p p
c o n t e x t / c o n t e x t a l b u m s v i e w . c p p
2018-02-27 18:06:05 +01:00
c o l l e c t i o n / c o l l e c t i o n . c p p
c o l l e c t i o n / c o l l e c t i o n m o d e l . c p p
c o l l e c t i o n / c o l l e c t i o n b a c k e n d . c p p
c o l l e c t i o n / c o l l e c t i o n w a t c h e r . c p p
c o l l e c t i o n / c o l l e c t i o n v i e w . c p p
2019-05-27 21:10:37 +02:00
c o l l e c t i o n / c o l l e c t i o n i t e m d e l e g a t e . c p p
2018-02-27 18:06:05 +01:00
c o l l e c t i o n / c o l l e c t i o n v i e w c o n t a i n e r . c p p
c o l l e c t i o n / c o l l e c t i o n d i r e c t o r y m o d e l . c p p
c o l l e c t i o n / c o l l e c t i o n f i l t e r w i d g e t . c p p
c o l l e c t i o n / c o l l e c t i o n p l a y l i s t i t e m . c p p
c o l l e c t i o n / c o l l e c t i o n q u e r y . c p p
c o l l e c t i o n / s q l r o w . c p p
c o l l e c t i o n / s a v e d g r o u p i n g m a n a g e r . c p p
c o l l e c t i o n / g r o u p b y d i a l o g . c p p
p l a y l i s t / p l a y l i s t . c p p
p l a y l i s t / p l a y l i s t b a c k e n d . c p p
p l a y l i s t / p l a y l i s t c o n t a i n e r . c p p
p l a y l i s t / p l a y l i s t d e l e g a t e s . c p p
p l a y l i s t / p l a y l i s t f i l t e r . c p p
p l a y l i s t / p l a y l i s t f i l t e r p a r s e r . c p p
p l a y l i s t / p l a y l i s t h e a d e r . c p p
p l a y l i s t / p l a y l i s t i t e m . c p p
p l a y l i s t / p l a y l i s t l i s t c o n t a i n e r . c p p
p l a y l i s t / p l a y l i s t l i s t m o d e l . c p p
p l a y l i s t / p l a y l i s t l i s t v i e w . c p p
p l a y l i s t / p l a y l i s t m a n a g e r . c p p
p l a y l i s t / p l a y l i s t s a v e o p t i o n s d i a l o g . c p p
p l a y l i s t / p l a y l i s t s e q u e n c e . c p p
p l a y l i s t / p l a y l i s t t a b b a r . c p p
p l a y l i s t / p l a y l i s t u n d o c o m m a n d s . c p p
p l a y l i s t / p l a y l i s t v i e w . c p p
p l a y l i s t / s o n g l o a d e r i n s e r t e r . c p p
p l a y l i s t / s o n g p l a y l i s t i t e m . c p p
2018-10-21 15:13:48 +02:00
q u e u e / q u e u e . c p p
q u e u e / q u e u e v i e w . c p p
2018-02-27 18:06:05 +01:00
p l a y l i s t p a r s e r s / a s x i n i p a r s e r . c p p
p l a y l i s t p a r s e r s / a s x p a r s e r . c p p
p l a y l i s t p a r s e r s / c u e p a r s e r . c p p
p l a y l i s t p a r s e r s / m 3 u p a r s e r . c p p
p l a y l i s t p a r s e r s / p a r s e r b a s e . c p p
p l a y l i s t p a r s e r s / p l a y l i s t p a r s e r . c p p
p l a y l i s t p a r s e r s / p l s p a r s e r . c p p
p l a y l i s t p a r s e r s / w p l p a r s e r . c p p
p l a y l i s t p a r s e r s / x m l p a r s e r . c p p
p l a y l i s t p a r s e r s / x s p f p a r s e r . c p p
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / a l b u m c o v e r m a n a g e r . c p p
c o v e r m a n a g e r / a l b u m c o v e r m a n a g e r l i s t . c p p
c o v e r m a n a g e r / a l b u m c o v e r l o a d e r . c p p
c o v e r m a n a g e r / a l b u m c o v e r f e t c h e r . c p p
c o v e r m a n a g e r / a l b u m c o v e r f e t c h e r s e a r c h . c p p
c o v e r m a n a g e r / a l b u m c o v e r s e a r c h e r . c p p
c o v e r m a n a g e r / a l b u m c o v e r e x p o r t . c p p
c o v e r m a n a g e r / a l b u m c o v e r e x p o r t e r . c p p
c o v e r m a n a g e r / a l b u m c o v e r c h o i c e c o n t r o l l e r . c p p
c o v e r m a n a g e r / c o v e r p r o v i d e r . c p p
c o v e r m a n a g e r / c o v e r p r o v i d e r s . c p p
c o v e r m a n a g e r / c o v e r s e a r c h s t a t i s t i c s . c p p
c o v e r m a n a g e r / c o v e r s e a r c h s t a t i s t i c s d i a l o g . c p p
c o v e r m a n a g e r / c o v e r e x p o r t r u n n a b l e . c p p
2019-07-07 21:14:24 +02:00
c o v e r m a n a g e r / c u r r e n t a l b u m c o v e r l o a d e r . c p p
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / c o v e r f r o m u r l d i a l o g . c p p
2018-12-15 00:43:50 +01:00
c o v e r m a n a g e r / l a s t f m c o v e r p r o v i d e r . c p p
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / m u s i c b r a i n z c o v e r p r o v i d e r . c p p
c o v e r m a n a g e r / d i s c o g s c o v e r p r o v i d e r . c p p
2019-04-14 02:54:40 +02:00
c o v e r m a n a g e r / d e e z e r c o v e r p r o v i d e r . c p p
2018-09-20 22:13:30 +02:00
l y r i c s / l y r i c s p r o v i d e r s . c p p
l y r i c s / l y r i c s p r o v i d e r . c p p
l y r i c s / l y r i c s f e t c h e r . c p p
l y r i c s / l y r i c s f e t c h e r s e a r c h . c p p
2019-08-12 18:11:01 +02:00
l y r i c s / j s o n l y r i c s p r o v i d e r . c p p
2018-09-20 22:13:30 +02:00
l y r i c s / a u d d l y r i c s p r o v i d e r . c p p
2019-08-12 18:11:01 +02:00
l y r i c s / o v h l y r i c s p r o v i d e r . c p p
2019-08-12 22:06:01 +02:00
l y r i c s / l o l o l y r i c s p r o v i d e r . c p p
2018-09-20 22:13:30 +02:00
2018-02-27 18:06:05 +01:00
s e t t i n g s / s e t t i n g s d i a l o g . c p p
s e t t i n g s / s e t t i n g s p a g e . c p p
s e t t i n g s / b e h a v i o u r s e t t i n g s p a g e . c p p
s e t t i n g s / c o l l e c t i o n s e t t i n g s p a g e . c p p
s e t t i n g s / b a c k e n d s e t t i n g s p a g e . c p p
2019-12-22 12:09:05 +01:00
s e t t i n g s / c o n t e x t s e t t i n g s p a g e . c p p
2018-02-27 18:06:05 +01:00
s e t t i n g s / p l a y l i s t s e t t i n g s p a g e . c p p
s e t t i n g s / n e t w o r k p r o x y s e t t i n g s p a g e . c p p
s e t t i n g s / a p p e a r a n c e s e t t i n g s p a g e . c p p
s e t t i n g s / n o t i f i c a t i o n s s e t t i n g s p a g e . c p p
2018-12-23 18:54:27 +01:00
s e t t i n g s / s c r o b b l e r s e t t i n g s p a g e . c p p
2018-02-27 18:06:05 +01:00
d i a l o g s / a b o u t . c p p
d i a l o g s / c o n s o l e . c p p
d i a l o g s / e r r o r d i a l o g . c p p
d i a l o g s / e d i t t a g d i a l o g . c p p
d i a l o g s / t r a c k s e l e c t i o n d i a l o g . c p p
w i d g e t s / a u t o e x p a n d i n g t r e e v i e w . c p p
w i d g e t s / b u s y i n d i c a t o r . c p p
w i d g e t s / c l i c k a b l e l a b e l . c p p
w i d g e t s / f a n c y t a b w i d g e t . c p p
w i d g e t s / f a v o r i t e w i d g e t . c p p
w i d g e t s / f i l e v i e w . c p p
w i d g e t s / f i l e v i e w l i s t . c p p
w i d g e t s / f o r c e s c r o l l p e r p i x e l . c p p
w i d g e t s / f r e e s p a c e b a r . c p p
w i d g e t s / g r o u p e d i c o n v i e w . c p p
w i d g e t s / l i n e e d i t . c p p
w i d g e t s / l i n e t e x t e d i t . c p p
w i d g e t s / m u l t i l o a d i n g i n d i c a t o r . c p p
w i d g e t s / p l a y i n g w i d g e t . c p p
w i d g e t s / o s d . c p p
w i d g e t s / o s d p r e t t y . c p p
w i d g e t s / r e n a m e t a b l i n e e d i t . c p p
2019-03-09 16:48:45 +01:00
w i d g e t s / v o l u m e s l i d e r . c p p
2018-02-27 18:06:05 +01:00
w i d g e t s / s t i c k y s l i d e r . c p p
w i d g e t s / s t r e t c h h e a d e r v i e w . c p p
w i d g e t s / t r a c k s l i d e r . c p p
w i d g e t s / t r a c k s l i d e r p o p u p . c p p
w i d g e t s / t r a c k s l i d e r s l i d e r . c p p
2018-08-09 18:10:03 +02:00
w i d g e t s / l o g i n s t a t e w i d g e t . c p p
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
m u s i c b r a i n z / a c o u s t i d c l i e n t . c p p
m u s i c b r a i n z / m u s i c b r a i n z c l i e n t . c p p
2018-10-02 00:38:52 +02:00
2018-10-23 23:25:02 +02:00
i n t e r n e t / i n t e r n e t s e r v i c e s . c p p
2018-08-09 18:10:03 +02:00
i n t e r n e t / i n t e r n e t s e r v i c e . c p p
i n t e r n e t / i n t e r n e t p l a y l i s t i t e m . c p p
2018-10-17 21:18:39 +02:00
i n t e r n e t / i n t e r n e t s e a r c h . c p p
i n t e r n e t / i n t e r n e t s e a r c h v i e w . c p p
i n t e r n e t / i n t e r n e t s e a r c h m o d e l . c p p
i n t e r n e t / i n t e r n e t s e a r c h s o r t m o d e l . c p p
i n t e r n e t / i n t e r n e t s e a r c h i t e m d e l e g a t e . c p p
2018-10-14 00:08:33 +02:00
i n t e r n e t / l o c a l r e d i r e c t s e r v e r . c p p
2019-06-17 23:54:24 +02:00
i n t e r n e t / i n t e r n e t s o n g s v i e w . c p p
2019-05-27 21:10:37 +02:00
i n t e r n e t / i n t e r n e t t a b s v i e w . c p p
i n t e r n e t / i n t e r n e t c o l l e c t i o n v i e w . c p p
i n t e r n e t / i n t e r n e t c o l l e c t i o n v i e w c o n t a i n e r . c p p
i n t e r n e t / i n t e r n e t s e a r c h v i e w . c p p
2018-08-29 21:42:24 +02:00
2018-12-23 18:54:27 +01:00
s c r o b b l e r / a u d i o s c r o b b l e r . c p p
s c r o b b l e r / s c r o b b l e r s e r v i c e s . c p p
s c r o b b l e r / s c r o b b l e r s e r v i c e . c p p
s c r o b b l e r / s c r o b b l e r c a c h e . c p p
s c r o b b l e r / s c r o b b l e r c a c h e i t e m . c p p
s c r o b b l e r / s c r o b b l i n g a p i 2 0 . c p p
s c r o b b l e r / l a s t f m s c r o b b l e r . c p p
s c r o b b l e r / l i b r e f m s c r o b b l e r . c p p
s c r o b b l e r / l i s t e n b r a i n z s c r o b b l e r . c p p
2019-01-06 16:48:23 +01:00
o r g a n i s e / o r g a n i s e . c p p
o r g a n i s e / o r g a n i s e f o r m a t . c p p
o r g a n i s e / o r g a n i s e d i a l o g . c p p
o r g a n i s e / o r g a n i s e e r r o r d i a l o g . c p p
2018-02-27 18:06:05 +01:00
)
set ( HEADERS
c o r e / m a i n w i n d o w . h
c o r e / a p p l i c a t i o n . h
c o r e / p l a y e r . h
c o r e / d a t a b a s e . h
c o r e / d e l e t e f i l e s . h
c o r e / f i l e s y s t e m w a t c h e r i n t e r f a c e . h
c o r e / m e r g e d p r o x y m o d e l . h
c o r e / n e t w o r k . h
2019-08-20 23:31:23 +02:00
c o r e / n e t w o r k t i m e o u t s . h
2018-02-27 18:06:05 +01:00
c o r e / q t f s l i s t e n e r . h
c o r e / s o n g l o a d e r . h
c o r e / t a g r e a d e r c l i e n t . h
c o r e / t a s k m a n a g e r . h
c o r e / u r l h a n d l e r . h
c o r e / q t s y s t e m t r a y i c o n . h
c o r e / s t a n d a r d i t e m i c o n l o a d e r . h
c o r e / s y s t e m t r a y i c o n . h
c o r e / m i m e d a t a . h
2018-03-18 18:39:30 +01:00
2018-02-27 18:06:05 +01:00
e n g i n e / e n g i n e b a s e . h
2019-11-03 19:53:08 +01:00
e n g i n e / d e v i c e f i n d e r s . h
2018-02-27 18:06:05 +01:00
a n a l y z e r / a n a l y z e r b a s e . h
a n a l y z e r / a n a l y z e r c o n t a i n e r . h
a n a l y z e r / b l o c k a n a l y z e r . h
2019-02-04 21:34:12 +01:00
a n a l y z e r / b o o m a n a l y z e r . h
a n a l y z e r / r a i n b o w a n a l y z e r . h
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
e q u a l i z e r / e q u a l i z e r . h
e q u a l i z e r / e q u a l i z e r s l i d e r . h
2018-10-02 00:38:52 +02:00
2018-08-29 21:42:24 +02:00
c o n t e x t / c o n t e x t v i e w . h
c o n t e x t / c o n t e x t a l b u m s m o d e l . h
c o n t e x t / c o n t e x t a l b u m s v i e w . h
2018-02-27 18:06:05 +01:00
c o l l e c t i o n / c o l l e c t i o n . h
c o l l e c t i o n / c o l l e c t i o n m o d e l . h
c o l l e c t i o n / c o l l e c t i o n b a c k e n d . h
c o l l e c t i o n / c o l l e c t i o n w a t c h e r . h
c o l l e c t i o n / c o l l e c t i o n v i e w . h
2019-05-27 21:10:37 +02:00
c o l l e c t i o n / c o l l e c t i o n i t e m d e l e g a t e . h
2018-02-27 18:06:05 +01:00
c o l l e c t i o n / c o l l e c t i o n v i e w c o n t a i n e r . h
c o l l e c t i o n / c o l l e c t i o n d i r e c t o r y m o d e l . h
c o l l e c t i o n / c o l l e c t i o n f i l t e r w i d g e t . h
c o l l e c t i o n / s a v e d g r o u p i n g m a n a g e r . h
c o l l e c t i o n / g r o u p b y d i a l o g . h
p l a y l i s t / p l a y l i s t . h
p l a y l i s t / p l a y l i s t b a c k e n d . h
p l a y l i s t / p l a y l i s t c o n t a i n e r . h
p l a y l i s t / p l a y l i s t d e l e g a t e s . h
p l a y l i s t / p l a y l i s t f i l t e r . h
p l a y l i s t / p l a y l i s t h e a d e r . h
p l a y l i s t / p l a y l i s t l i s t c o n t a i n e r . h
p l a y l i s t / p l a y l i s t l i s t m o d e l . h
p l a y l i s t / p l a y l i s t l i s t v i e w . h
p l a y l i s t / p l a y l i s t m a n a g e r . h
p l a y l i s t / p l a y l i s t s a v e o p t i o n s d i a l o g . h
p l a y l i s t / p l a y l i s t s e q u e n c e . h
p l a y l i s t / p l a y l i s t t a b b a r . h
p l a y l i s t / p l a y l i s t v i e w . h
p l a y l i s t / p l a y l i s t i t e m m i m e d a t a . h
p l a y l i s t / s o n g l o a d e r i n s e r t e r . h
p l a y l i s t / s o n g m i m e d a t a . h
2018-10-21 15:13:48 +02:00
q u e u e / q u e u e . h
q u e u e / q u e u e v i e w . h
2018-02-27 18:06:05 +01:00
p l a y l i s t p a r s e r s / a s x i n i p a r s e r . h
p l a y l i s t p a r s e r s / a s x p a r s e r . h
p l a y l i s t p a r s e r s / c u e p a r s e r . h
p l a y l i s t p a r s e r s / m 3 u p a r s e r . h
p l a y l i s t p a r s e r s / p a r s e r b a s e . h
p l a y l i s t p a r s e r s / p l a y l i s t p a r s e r . h
p l a y l i s t p a r s e r s / p l s p a r s e r . h
p l a y l i s t p a r s e r s / x s p f p a r s e r . h
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / a l b u m c o v e r m a n a g e r . h
c o v e r m a n a g e r / a l b u m c o v e r m a n a g e r l i s t . h
c o v e r m a n a g e r / a l b u m c o v e r l o a d e r . h
c o v e r m a n a g e r / a l b u m c o v e r f e t c h e r . h
c o v e r m a n a g e r / a l b u m c o v e r f e t c h e r s e a r c h . h
c o v e r m a n a g e r / a l b u m c o v e r s e a r c h e r . h
c o v e r m a n a g e r / a l b u m c o v e r e x p o r t . h
c o v e r m a n a g e r / a l b u m c o v e r e x p o r t e r . h
c o v e r m a n a g e r / a l b u m c o v e r c h o i c e c o n t r o l l e r . h
c o v e r m a n a g e r / c o v e r p r o v i d e r . h
c o v e r m a n a g e r / c o v e r p r o v i d e r s . h
c o v e r m a n a g e r / c o v e r s e a r c h s t a t i s t i c s d i a l o g . h
c o v e r m a n a g e r / c o v e r e x p o r t r u n n a b l e . h
2019-07-07 21:14:24 +02:00
c o v e r m a n a g e r / c u r r e n t a l b u m c o v e r l o a d e r . h
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / c o v e r f r o m u r l d i a l o g . h
2018-12-15 00:43:50 +01:00
c o v e r m a n a g e r / l a s t f m c o v e r p r o v i d e r . h
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / m u s i c b r a i n z c o v e r p r o v i d e r . h
c o v e r m a n a g e r / d i s c o g s c o v e r p r o v i d e r . h
2019-04-14 02:54:40 +02:00
c o v e r m a n a g e r / d e e z e r c o v e r p r o v i d e r . h
2018-09-20 22:13:30 +02:00
l y r i c s / l y r i c s p r o v i d e r s . h
l y r i c s / l y r i c s p r o v i d e r . h
l y r i c s / l y r i c s f e t c h e r . h
l y r i c s / l y r i c s f e t c h e r s e a r c h . h
2019-08-12 18:11:01 +02:00
l y r i c s / j s o n l y r i c s p r o v i d e r . h
2018-09-20 22:13:30 +02:00
l y r i c s / a u d d l y r i c s p r o v i d e r . h
2019-08-12 18:11:01 +02:00
l y r i c s / o v h l y r i c s p r o v i d e r . h
2019-08-12 22:06:01 +02:00
l y r i c s / l o l o l y r i c s p r o v i d e r . h
2018-08-09 18:10:03 +02:00
2018-02-27 18:06:05 +01:00
s e t t i n g s / s e t t i n g s d i a l o g . h
s e t t i n g s / s e t t i n g s p a g e . h
s e t t i n g s / b e h a v i o u r s e t t i n g s p a g e . h
s e t t i n g s / c o l l e c t i o n s e t t i n g s p a g e . h
s e t t i n g s / b a c k e n d s e t t i n g s p a g e . h
2019-12-22 12:09:05 +01:00
s e t t i n g s / c o n t e x t s e t t i n g s p a g e . h
2018-02-27 18:06:05 +01:00
s e t t i n g s / p l a y l i s t s e t t i n g s p a g e . h
s e t t i n g s / n e t w o r k p r o x y s e t t i n g s p a g e . h
s e t t i n g s / a p p e a r a n c e s e t t i n g s p a g e . h
s e t t i n g s / n o t i f i c a t i o n s s e t t i n g s p a g e . h
2018-12-23 18:54:27 +01:00
s e t t i n g s / s c r o b b l e r s e t t i n g s p a g e . h
2018-08-09 18:10:03 +02:00
2018-02-27 18:06:05 +01:00
d i a l o g s / a b o u t . h
d i a l o g s / e r r o r d i a l o g . h
d i a l o g s / c o n s o l e . h
d i a l o g s / e d i t t a g d i a l o g . h
d i a l o g s / t r a c k s e l e c t i o n d i a l o g . h
w i d g e t s / a u t o e x p a n d i n g t r e e v i e w . h
w i d g e t s / b u s y i n d i c a t o r . h
w i d g e t s / c l i c k a b l e l a b e l . h
w i d g e t s / f a n c y t a b w i d g e t . h
w i d g e t s / f a v o r i t e w i d g e t . h
w i d g e t s / f i l e v i e w . h
w i d g e t s / f i l e v i e w l i s t . h
w i d g e t s / f r e e s p a c e b a r . h
w i d g e t s / g r o u p e d i c o n v i e w . h
w i d g e t s / l i n e e d i t . h
w i d g e t s / l i n e t e x t e d i t . h
w i d g e t s / m u l t i l o a d i n g i n d i c a t o r . h
w i d g e t s / p l a y i n g w i d g e t . h
w i d g e t s / o s d . h
w i d g e t s / o s d p r e t t y . h
w i d g e t s / r e n a m e t a b l i n e e d i t . h
2019-03-09 16:48:45 +01:00
w i d g e t s / v o l u m e s l i d e r . h
2018-02-27 18:06:05 +01:00
w i d g e t s / s t i c k y s l i d e r . h
w i d g e t s / s t r e t c h h e a d e r v i e w . h
w i d g e t s / t r a c k s l i d e r . h
w i d g e t s / t r a c k s l i d e r p o p u p . h
w i d g e t s / t r a c k s l i d e r s l i d e r . h
2018-08-09 18:10:03 +02:00
w i d g e t s / l o g i n s t a t e w i d g e t . h
2019-05-08 23:34:44 +02:00
w i d g e t s / q s e a r c h f i e l d . h
2018-10-02 00:38:52 +02:00
2018-02-27 18:06:05 +01:00
m u s i c b r a i n z / a c o u s t i d c l i e n t . h
m u s i c b r a i n z / m u s i c b r a i n z c l i e n t . h
2018-10-02 00:38:52 +02:00
2018-10-23 23:25:02 +02:00
i n t e r n e t / i n t e r n e t s e r v i c e s . h
2018-08-09 18:10:03 +02:00
i n t e r n e t / i n t e r n e t s e r v i c e . h
i n t e r n e t / i n t e r n e t s o n g m i m e d a t a . h
2018-10-17 21:18:39 +02:00
i n t e r n e t / i n t e r n e t s e a r c h . h
i n t e r n e t / i n t e r n e t s e a r c h v i e w . h
i n t e r n e t / i n t e r n e t s e a r c h m o d e l . h
2018-10-14 00:08:33 +02:00
i n t e r n e t / l o c a l r e d i r e c t s e r v e r . h
2019-06-17 23:54:24 +02:00
i n t e r n e t / i n t e r n e t s o n g s v i e w . h
2019-05-27 21:10:37 +02:00
i n t e r n e t / i n t e r n e t t a b s v i e w . h
i n t e r n e t / i n t e r n e t c o l l e c t i o n v i e w . h
i n t e r n e t / i n t e r n e t c o l l e c t i o n v i e w c o n t a i n e r . h
i n t e r n e t / i n t e r n e t s e a r c h v i e w . h
2018-08-09 18:10:03 +02:00
2018-12-23 18:54:27 +01:00
s c r o b b l e r / a u d i o s c r o b b l e r . h
s c r o b b l e r / s c r o b b l e r s e r v i c e s . h
s c r o b b l e r / s c r o b b l e r s e r v i c e . h
s c r o b b l e r / s c r o b b l e r c a c h e . h
s c r o b b l e r / s c r o b b l e r c a c h e i t e m . h
s c r o b b l e r / s c r o b b l i n g a p i 2 0 . h
s c r o b b l e r / l a s t f m s c r o b b l e r . h
s c r o b b l e r / l i b r e f m s c r o b b l e r . h
s c r o b b l e r / l i s t e n b r a i n z s c r o b b l e r . h
2019-01-06 16:48:23 +01:00
o r g a n i s e / o r g a n i s e . h
o r g a n i s e / o r g a n i s e d i a l o g . h
o r g a n i s e / o r g a n i s e e r r o r d i a l o g . h
2018-02-27 18:06:05 +01:00
)
set ( UI
c o r e / m a i n w i n d o w . u i
2018-08-29 21:42:24 +02:00
c o n t e x t / c o n t e x t v i e w c o n t a i n e r . u i
2018-02-27 18:06:05 +01:00
c o l l e c t i o n / g r o u p b y d i a l o g . u i
c o l l e c t i o n / c o l l e c t i o n f i l t e r w i d g e t . u i
c o l l e c t i o n / c o l l e c t i o n v i e w c o n t a i n e r . u i
c o l l e c t i o n / s a v e d g r o u p i n g m a n a g e r . u i
p l a y l i s t / p l a y l i s t c o n t a i n e r . u i
p l a y l i s t / p l a y l i s t l i s t c o n t a i n e r . u i
p l a y l i s t / p l a y l i s t s a v e o p t i o n s d i a l o g . u i
p l a y l i s t / p l a y l i s t s e q u e n c e . u i
2018-10-21 15:13:48 +02:00
q u e u e / q u e u e v i e w . u i
2018-02-27 18:06:05 +01:00
c o v e r m a n a g e r / a l b u m c o v e r e x p o r t . u i
c o v e r m a n a g e r / a l b u m c o v e r m a n a g e r . u i
c o v e r m a n a g e r / a l b u m c o v e r s e a r c h e r . u i
c o v e r m a n a g e r / c o v e r s e a r c h s t a t i s t i c s d i a l o g . u i
c o v e r m a n a g e r / c o v e r f r o m u r l d i a l o g . u i
s e t t i n g s / s e t t i n g s d i a l o g . u i
s e t t i n g s / b e h a v i o u r s e t t i n g s p a g e . u i
s e t t i n g s / c o l l e c t i o n s e t t i n g s p a g e . u i
s e t t i n g s / b a c k e n d s e t t i n g s p a g e . u i
2019-12-22 12:09:05 +01:00
s e t t i n g s / c o n t e x t s e t t i n g s p a g e . u i
2018-02-27 18:06:05 +01:00
s e t t i n g s / p l a y l i s t s e t t i n g s p a g e . u i
s e t t i n g s / n e t w o r k p r o x y s e t t i n g s p a g e . u i
s e t t i n g s / a p p e a r a n c e s e t t i n g s p a g e . u i
s e t t i n g s / n o t i f i c a t i o n s s e t t i n g s p a g e . u i
2018-12-23 18:54:27 +01:00
s e t t i n g s / s c r o b b l e r s e t t i n g s p a g e . u i
2018-02-27 18:06:05 +01:00
e q u a l i z e r / e q u a l i z e r . u i
e q u a l i z e r / e q u a l i z e r s l i d e r . u i
d i a l o g s / a b o u t . u i
d i a l o g s / e r r o r d i a l o g . u i
d i a l o g s / c o n s o l e . u i
d i a l o g s / e d i t t a g d i a l o g . u i
d i a l o g s / t r a c k s e l e c t i o n d i a l o g . u i
w i d g e t s / t r a c k s l i d e r . u i
w i d g e t s / o s d p r e t t y . u i
w i d g e t s / f i l e v i e w . u i
2018-08-09 18:10:03 +02:00
w i d g e t s / l o g i n s t a t e w i d g e t . u i
2018-10-02 00:38:52 +02:00
2019-05-27 21:10:37 +02:00
i n t e r n e t / i n t e r n e t t a b s v i e w . u i
i n t e r n e t / i n t e r n e t c o l l e c t i o n v i e w c o n t a i n e r . u i
2018-10-17 21:18:39 +02:00
i n t e r n e t / i n t e r n e t s e a r c h v i e w . u i
2018-08-09 18:10:03 +02:00
2019-01-06 16:48:23 +01:00
o r g a n i s e / o r g a n i s e d i a l o g . u i
o r g a n i s e / o r g a n i s e e r r o r d i a l o g . u i
2018-02-27 18:06:05 +01:00
)
2018-10-14 00:08:33 +02:00
set ( RESOURCES ../data/data.qrc ../data/icons.qrc )
2018-02-27 18:06:05 +01:00
set ( OTHER_SOURCES )
option ( USE_INSTALL_PREFIX "Look for data in CMAKE_INSTALL_PREFIX" ON )
2019-05-08 23:34:44 +02:00
if ( NOT APPLE )
set ( NOT_APPLE ON )
optional_source ( NOT_APPLE SOURCES widgets/qsearchfield_nonmac.cpp )
endif ( )
2019-01-01 20:07:29 +01:00
if ( HAVE_GLOBALSHORTCUTS )
optional_source ( HAVE_GLOBALSHORTCUTS
S O U R C E S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t s . c p p g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d . c p p g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t g r a b b e r . c p p s e t t i n g s / s h o r t c u t s s e t t i n g s p a g e . c p p
H E A D E R S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t s . h g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d . h g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t g r a b b e r . h s e t t i n g s / s h o r t c u t s s e t t i n g s p a g e . h
U I g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t g r a b b e r . u i s e t t i n g s / s h o r t c u t s s e t t i n g s p a g e . u i
)
if ( X11_FOUND OR WIN32 )
set ( X11_OR_WIN ON )
endif ( )
optional_source ( X11_OR_WIN
S O U R C E S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d - s y s t e m . c p p g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t . c p p
H E A D E R S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d - s y s t e m . h g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t . h
)
optional_source ( X11_FOUND
S O U R C E S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t - x 1 1 . c p p
)
optional_source ( HAVE_DBUS
2019-01-24 20:17:50 +01:00
S O U R C E S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d - g s d . c p p
H E A D E R S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d - g s d . h
2019-01-01 20:07:29 +01:00
)
optional_source ( WIN32
S O U R C E S g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t - w i n . c p p
)
endif ( HAVE_GLOBALSHORTCUTS )
2018-05-15 00:25:30 +02:00
# ALSA
optional_source ( HAVE_ALSA
S O U R C E S
e n g i n e / a l s a d e v i c e f i n d e r . c p p
)
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
# X11
2019-01-01 20:07:29 +01:00
optional_source ( X11_FOUND
S O U R C E S
w i d g e t s / o s d _ x 1 1 . c p p
)
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
# GStreamer
optional_source ( HAVE_GSTREAMER
2019-04-20 15:25:31 +02:00
S O U R C E S e n g i n e / g s t s t a r t u p . c p p e n g i n e / g s t e n g i n e . c p p e n g i n e / g s t e n g i n e p i p e l i n e . c p p e n g i n e / g s t e l e m e n t d e l e t e r . c p p
H E A D E R S e n g i n e / g s t s t a r t u p . h e n g i n e / g s t e n g i n e . h e n g i n e / g s t e n g i n e p i p e l i n e . h e n g i n e / g s t e l e m e n t d e l e t e r . h
2018-05-15 00:25:30 +02:00
)
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
# Xine
optional_source ( HAVE_XINE
2019-05-31 01:29:56 +02:00
S O U R C E S e n g i n e / x i n e e n g i n e . c p p
2018-05-15 00:25:30 +02:00
H E A D E R S e n g i n e / x i n e e n g i n e . h
)
2019-05-28 18:37:51 +02:00
optional_source ( XINE_ANALYZER
S O U R C E S e n g i n e / x i n e s c o p e . c
)
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
# VLC
optional_source ( HAVE_VLC
S O U R C E S e n g i n e / v l c e n g i n e . c p p
H E A D E R S e n g i n e / v l c e n g i n e . h
)
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
# Phonon
optional_source ( HAVE_PHONON
S O U R C E S e n g i n e / p h o n o n e n g i n e . c p p
H E A D E R S e n g i n e / p h o n o n e n g i n e . h
)
2018-02-27 18:06:05 +01:00
2018-05-14 17:57:37 +02:00
# DBUS and MPRIS - Unix specific
2018-05-15 00:25:30 +02:00
if ( UNIX AND HAVE_DBUS )
2018-02-27 18:06:05 +01:00
file ( MAKE_DIRECTORY ${ CMAKE_CURRENT_BINARY_DIR } /dbus )
2019-01-01 20:07:29 +01:00
optional_source ( HAVE_DBUS
S O U R C E S c o r e / m p r i s . c p p c o r e / m p r i s 2 . c p p c o r e / d b u s s c r e e n s a v e r . c p p
H E A D E R S c o r e / m p r i s . h c o r e / m p r i s 2 . h
)
optional_source ( HAVE_UDISKS2
S O U R C E S d e v i c e / u d i s k s 2 l i s t e r . c p p
H E A D E R S d e v i c e / u d i s k s 2 l i s t e r . h
)
2018-02-27 18:06:05 +01:00
# MPRIS 2.0 DBUS interfaces
qt5_add_dbus_adaptor ( SOURCES
d b u s / o r g . m p r i s . M e d i a P l a y e r 2 . P l a y e r . x m l
c o r e / m p r i s 2 . h m p r i s : : M p r i s 2 c o r e / m p r i s 2 _ p l a y e r M p r i s 2 P l a y e r )
qt5_add_dbus_adaptor ( SOURCES
d b u s / o r g . m p r i s . M e d i a P l a y e r 2 . x m l
c o r e / m p r i s 2 . h m p r i s : : M p r i s 2 c o r e / m p r i s 2 _ r o o t M p r i s 2 R o o t )
qt5_add_dbus_adaptor ( SOURCES
d b u s / o r g . m p r i s . M e d i a P l a y e r 2 . T r a c k L i s t . x m l
c o r e / m p r i s 2 . h m p r i s : : M p r i s 2 c o r e / m p r i s 2 _ t r a c k l i s t M p r i s 2 T r a c k L i s t )
# MPRIS 2.1 DBUS interfaces
qt5_add_dbus_adaptor ( SOURCES
d b u s / o r g . m p r i s . M e d i a P l a y e r 2 . P l a y l i s t s . x m l
c o r e / m p r i s 2 . h m p r i s : : M p r i s 2 c o r e / m p r i s 2 _ p l a y l i s t s M p r i s 2 P l a y l i s t s )
# org.freedesktop.Notifications DBUS interface
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . f r e e d e s k t o p . N o t i f i c a t i o n s . x m l
d b u s / n o t i f i c a t i o n )
# org.gnome.SettingsDaemon interface
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . g n o m e . S e t t i n g s D a e m o n . M e d i a K e y s . x m l
d b u s / g n o m e s e t t i n g s d a e m o n )
# org.freedesktop.Avahi.Server interface
add_custom_command (
O U T P U T
$ { C M A K E _ C U R R E N T _ B I N A R Y _ D I R } / d b u s / a v a h i s e r v e r . c p p
$ { C M A K E _ C U R R E N T _ B I N A R Y _ D I R } / d b u s / a v a h i s e r v e r . h
C O M M A N D $ { Q T _ D B U S X M L 2 C P P _ E X E C U T A B L E }
d b u s / o r g . f r e e d e s k t o p . A v a h i . S e r v e r . x m l
- p $ { C M A K E _ C U R R E N T _ B I N A R Y _ D I R } / d b u s / a v a h i s e r v e r
- i d b u s / m e t a t y p e s . h
D E P E N D S d b u s / o r g . f r e e d e s k t o p . A v a h i . S e r v e r . x m l
W O R K I N G _ D I R E C T O R Y $ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } )
list ( APPEND HEADERS ${ CMAKE_CURRENT_BINARY_DIR } /dbus/avahiserver.h )
list ( APPEND SOURCES ${ CMAKE_CURRENT_BINARY_DIR } /dbus/avahiserver.cpp )
# org.freedesktop.Avahi.EntryGroup interface
add_custom_command (
O U T P U T
$ { C M A K E _ C U R R E N T _ B I N A R Y _ D I R } / d b u s / a v a h i e n t r y g r o u p . c p p
$ { C M A K E _ C U R R E N T _ B I N A R Y _ D I R } / d b u s / a v a h i e n t r y g r o u p . h
C O M M A N D $ { Q T _ D B U S X M L 2 C P P _ E X E C U T A B L E }
d b u s / o r g . f r e e d e s k t o p . A v a h i . E n t r y G r o u p . x m l
- p $ { C M A K E _ C U R R E N T _ B I N A R Y _ D I R } / d b u s / a v a h i e n t r y g r o u p
- i d b u s / m e t a t y p e s . h
D E P E N D S d b u s / o r g . f r e e d e s k t o p . A v a h i . E n t r y G r o u p . x m l
W O R K I N G _ D I R E C T O R Y $ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } )
list ( APPEND HEADERS ${ CMAKE_CURRENT_BINARY_DIR } /dbus/avahientrygroup.h )
list ( APPEND SOURCES ${ CMAKE_CURRENT_BINARY_DIR } /dbus/avahientrygroup.cpp )
if ( HAVE_UDISKS2 )
set_source_files_properties ( dbus/org.freedesktop.DBus.ObjectManager.xml
P R O P E R T I E S N O _ N A M E S P A C E d b u s / o b j e c t m a n a g e r I N C L U D E d b u s / m e t a t y p e s . h )
set_source_files_properties ( dbus/org.freedesktop.UDisks2.Filesystem.xml
P R O P E R T I E S N O _ N A M E S P A C E d b u s / u d i s k s 2 f i l e s y s t e m I N C L U D E d b u s / m e t a t y p e s . h )
set_source_files_properties ( dbus/org.freedesktop.UDisks2.Block.xml
P R O P E R T I E S N O _ N A M E S P A C E d b u s / u d i s k s 2 b l o c k I N C L U D E d b u s / m e t a t y p e s . h )
set_source_files_properties ( dbus/org.freedesktop.UDisks2.Drive.xml
P R O P E R T I E S N O _ N A M E S P A C E d b u s / u d i s k s 2 d r i v e I N C L U D E d b u s / m e t a t y p e s . h )
set_source_files_properties ( dbus/org.freedesktop.UDisks2.Job.xml
P R O P E R T I E S N O _ N A M E S P A C E d b u s / u d i s k s 2 j o b I N C L U D E d b u s / m e t a t y p e s . h )
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . f r e e d e s k t o p . D B u s . O b j e c t M a n a g e r . x m l
d b u s / o b j e c t m a n a g e r )
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . f r e e d e s k t o p . U D i s k s 2 . F i l e s y s t e m . x m l
d b u s / u d i s k s 2 f i l e s y s t e m )
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . f r e e d e s k t o p . U D i s k s 2 . B l o c k . x m l
d b u s / u d i s k s 2 b l o c k )
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . f r e e d e s k t o p . U D i s k s 2 . D r i v e . x m l
d b u s / u d i s k s 2 d r i v e )
qt5_add_dbus_interface ( SOURCES
d b u s / o r g . f r e e d e s k t o p . U D i s k s 2 . J o b . x m l
d b u s / u d i s k s 2 j o b )
endif ( HAVE_UDISKS2 )
2018-05-15 00:25:30 +02:00
endif ( UNIX AND HAVE_DBUS )
2018-02-27 18:06:05 +01:00
2018-09-20 17:36:23 +02:00
optional_source ( UNIX
S O U R C E S
d e v i c e / c o n n e c t e d d e v i c e . c p p
d e v i c e / d e v i c e d a t a b a s e b a c k e n d . c p p
d e v i c e / d e v i c e l i s t e r . c p p
d e v i c e / d e v i c e m a n a g e r . c p p
d e v i c e / d e v i c e s t a t e f i l t e r m o d e l . c p p
d e v i c e / f i l e s y s t e m d e v i c e . c p p
d e v i c e / d e v i c e v i e w c o n t a i n e r . c p p
d e v i c e / d e v i c e v i e w . c p p
d e v i c e / d e v i c e p r o p e r t i e s . c p p
2018-12-29 02:57:22 +01:00
d e v i c e / d e v i c e i n f o . c p p
2018-09-20 17:36:23 +02:00
H E A D E R S
d e v i c e / c o n n e c t e d d e v i c e . h
d e v i c e / d e v i c e d a t a b a s e b a c k e n d . h
d e v i c e / d e v i c e l i s t e r . h
d e v i c e / d e v i c e m a n a g e r . h
d e v i c e / d e v i c e s t a t e f i l t e r m o d e l . h
d e v i c e / f i l e s y s t e m d e v i c e . h
d e v i c e / d e v i c e v i e w c o n t a i n e r . h
d e v i c e / d e v i c e v i e w . h
d e v i c e / d e v i c e p r o p e r t i e s . h
U I
d e v i c e / d e v i c e p r o p e r t i e s . u i
d e v i c e / d e v i c e v i e w c o n t a i n e r . u i
)
2018-02-27 18:06:05 +01:00
# Libgpod device backend
optional_source ( HAVE_LIBGPOD
I N C L U D E _ D I R E C T O R I E S $ { L I B G P O D _ I N C L U D E _ D I R S }
S O U R C E S
d e v i c e / g p o d d e v i c e . c p p
d e v i c e / g p o d l o a d e r . c p p
H E A D E R S
d e v i c e / g p o d d e v i c e . h
d e v i c e / g p o d l o a d e r . h
)
# GIO device backend
optional_source ( HAVE_GIO
I N C L U D E _ D I R E C T O R I E S $ { G I O _ I N C L U D E _ D I R S }
S O U R C E S d e v i c e / g i o l i s t e r . c p p
H E A D E R S d e v i c e / g i o l i s t e r . h
)
2018-11-05 01:14:56 +01:00
# imobiledevice backend and device
2018-02-27 18:06:05 +01:00
optional_source ( HAVE_IMOBILEDEVICE
I N C L U D E _ D I R E C T O R I E S
2018-11-05 01:14:56 +01:00
$ { L I B I M O B I L E D E V I C E _ I N C L U D E _ D I R S }
$ { L I B P L I S T _ I N C L U D E _ D I R S }
$ { L I B P L I S T P P _ I N C L U D E _ D I R S }
2018-02-27 18:06:05 +01:00
S O U R C E S
d e v i c e / a f c d e v i c e . c p p
d e v i c e / a f c f i l e . c p p
d e v i c e / a f c t r a n s f e r . c p p
d e v i c e / i l i s t e r . c p p
d e v i c e / i m o b i l e d e v i c e c o n n e c t i o n . c p p
H E A D E R S
d e v i c e / a f c d e v i c e . h
d e v i c e / a f c f i l e . h
d e v i c e / a f c t r a n s f e r . h
d e v i c e / i l i s t e r . h
)
# mtp device
optional_source ( HAVE_LIBMTP
I N C L U D E _ D I R E C T O R I E S $ { L I B M T P _ I N C L U D E _ D I R S }
S O U R C E S
d e v i c e / m t p c o n n e c t i o n . c p p
d e v i c e / m t p d e v i c e . c p p
d e v i c e / m t p l o a d e r . c p p
H E A D E R S
d e v i c e / m t p d e v i c e . h
d e v i c e / m t p l o a d e r . h
)
# Pulse audio integration
optional_source ( HAVE_LIBPULSE
I N C L U D E _ D I R E C T O R I E S
$ { L I B P U L S E _ I N C L U D E _ D I R S }
S O U R C E S
e n g i n e / p u l s e d e v i c e f i n d e r . c p p
)
2019-01-06 16:48:23 +01:00
# MusicBrainz and transcoder require GStreamer
2018-02-27 18:06:05 +01:00
optional_source ( HAVE_GSTREAMER
S O U R C E S
t r a n s c o d e r / t r a n s c o d e r . c p p
t r a n s c o d e r / t r a n s c o d e d i a l o g . c p p
t r a n s c o d e r / t r a n s c o d e r o p t i o n s d i a l o g . c p p
t r a n s c o d e r / t r a n s c o d e r o p t i o n s f l a c . c p p
2019-01-06 14:34:50 +01:00
t r a n s c o d e r / t r a n s c o d e r o p t i o n s w a v p a c k . c p p
t r a n s c o d e r / t r a n s c o d e r o p t i o n s v o r b i s . c p p
2018-02-27 18:06:05 +01:00
t r a n s c o d e r / t r a n s c o d e r o p t i o n s o p u s . c p p
t r a n s c o d e r / t r a n s c o d e r o p t i o n s s p e e x . c p p
2019-01-06 14:34:50 +01:00
t r a n s c o d e r / t r a n s c o d e r o p t i o n s a a c . c p p
t r a n s c o d e r / t r a n s c o d e r o p t i o n s a s f . c p p
t r a n s c o d e r / t r a n s c o d e r o p t i o n s m p 3 . c p p
2018-12-29 15:37:16 +01:00
s e t t i n g s / t r a n s c o d e r s e t t i n g s p a g e . c p p
2018-02-27 18:06:05 +01:00
H E A D E R S
t r a n s c o d e r / t r a n s c o d e r . h
t r a n s c o d e r / t r a n s c o d e d i a l o g . h
t r a n s c o d e r / t r a n s c o d e r o p t i o n s d i a l o g . h
t r a n s c o d e r / t r a n s c o d e r o p t i o n s m p 3 . h
2018-12-29 15:37:16 +01:00
s e t t i n g s / t r a n s c o d e r s e t t i n g s p a g e . h
2018-02-27 18:06:05 +01:00
U I
t r a n s c o d e r / t r a n s c o d e d i a l o g . u i
t r a n s c o d e r / t r a n s c o d e l o g d i a l o g . u i
t r a n s c o d e r / t r a n s c o d e r o p t i o n s a a c . u i
t r a n s c o d e r / t r a n s c o d e r o p t i o n s d i a l o g . u i
t r a n s c o d e r / t r a n s c o d e r o p t i o n s f l a c . u i
2019-01-06 14:34:50 +01:00
t r a n s c o d e r / t r a n s c o d e r o p t i o n s w a v p a c k . u i
t r a n s c o d e r / t r a n s c o d e r o p t i o n s v o r b i s . u i
2018-02-27 18:06:05 +01:00
t r a n s c o d e r / t r a n s c o d e r o p t i o n s o p u s . u i
t r a n s c o d e r / t r a n s c o d e r o p t i o n s s p e e x . u i
2019-01-06 14:34:50 +01:00
t r a n s c o d e r / t r a n s c o d e r o p t i o n s a s f . u i
t r a n s c o d e r / t r a n s c o d e r o p t i o n s m p 3 . u i
2018-12-29 15:37:16 +01:00
s e t t i n g s / t r a n s c o d e r s e t t i n g s p a g e . u i
2018-02-27 18:06:05 +01:00
)
# CDIO backend and device
if ( HAVE_GSTREAMER )
2018-07-16 07:23:37 +02:00
optional_source ( HAVE_CHROMAPRINT
S O U R C E S
m u s i c b r a i n z / c h r o m a p r i n t e r . c p p
m u s i c b r a i n z / t a g f e t c h e r . c p p
H E A D E R S
m u s i c b r a i n z / t a g f e t c h e r . h
)
2018-02-27 18:06:05 +01:00
optional_source ( HAVE_AUDIOCD
S O U R C E S
d e v i c e / c d d a d e v i c e . c p p
d e v i c e / c d d a l i s t e r . c p p
d e v i c e / c d d a s o n g l o a d e r . c p p
H E A D E R S
d e v i c e / c d d a d e v i c e . h
d e v i c e / c d d a l i s t e r . h
d e v i c e / c d d a s o n g l o a d e r . h
U I
)
2018-05-15 00:25:30 +02:00
endif ( )
# Platform specific - macOS
optional_source ( APPLE
S O U R C E S
2019-08-06 20:31:54 +02:00
c o r e / m a c _ u t i l i t i e s . m m
2018-05-15 00:25:30 +02:00
c o r e / m a c _ s t a r t u p . m m
c o r e / m a c s y s t e m t r a y i c o n . m m
c o r e / m a c s c r e e n s a v e r . c p p
c o r e / m a c f s l i s t e n e r . m m
w i d g e t s / o s d _ m a c . m m
2019-05-08 23:34:44 +02:00
w i d g e t s / q s e a r c h f i e l d _ m a c . m m
2019-01-01 20:22:19 +01:00
e n g i n e / m a c o s d e v i c e f i n d e r . c p p
2019-01-01 20:07:29 +01:00
g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d - m a c o s . m m
2019-01-01 21:40:36 +01:00
g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t g r a b b e r . m m
2018-05-15 00:25:30 +02:00
H E A D E R S
c o r e / m a c s y s t e m t r a y i c o n . h
c o r e / m a c f s l i s t e n e r . h
2019-01-01 20:07:29 +01:00
g l o b a l s h o r t c u t s / g l o b a l s h o r t c u t b a c k e n d - m a c o s . h
2018-05-15 00:25:30 +02:00
)
if ( APPLE )
optional_source ( HAVE_LIBMTP
S O U R C E S
2019-01-02 00:32:36 +01:00
d e v i c e / m a c o s d e v i c e l i s t e r . m m
2018-05-15 00:25:30 +02:00
H E A D E R S
2019-01-02 00:32:36 +01:00
d e v i c e / m a c o s d e v i c e l i s t e r . h
2018-05-15 00:25:30 +02:00
)
endif ( )
# Platform specific - Windows
optional_source ( WIN32
S O U R C E S
e n g i n e / d i r e c t s o u n d d e v i c e f i n d e r . c p p
2019-11-03 19:53:08 +01:00
e n g i n e / m m d e v i c e f i n d e r . c p p
2018-05-15 00:25:30 +02:00
w i d g e t s / o s d _ w i n . c p p
2019-08-29 21:32:52 +02:00
c o r e / w i n d o w s 7 t h u m b b a r . c p p
H E A D E R S
c o r e / w i n d o w s 7 t h u m b b a r . h
2018-05-15 00:25:30 +02:00
)
2018-02-27 18:06:05 +01:00
2019-04-14 18:02:51 +02:00
optional_source ( HAVE_TIDAL
2018-10-17 23:49:02 +02:00
S O U R C E S
t i d a l / t i d a l s e r v i c e . c p p
t i d a l / t i d a l u r l h a n d l e r . c p p
2019-05-27 21:10:37 +02:00
t i d a l / t i d a l b a s e r e q u e s t . c p p
t i d a l / t i d a l r e q u e s t . c p p
t i d a l / t i d a l s t r e a m u r l r e q u e s t . c p p
2019-06-07 20:23:05 +02:00
t i d a l / t i d a l f a v o r i t e r e q u e s t . c p p
2018-10-17 23:49:02 +02:00
s e t t i n g s / t i d a l s e t t i n g s p a g e . c p p
2019-04-14 18:02:51 +02:00
c o v e r m a n a g e r / t i d a l c o v e r p r o v i d e r . c p p
2018-10-17 23:49:02 +02:00
H E A D E R S
t i d a l / t i d a l s e r v i c e . h
t i d a l / t i d a l u r l h a n d l e r . h
2019-05-27 21:10:37 +02:00
t i d a l / t i d a l b a s e r e q u e s t . h
t i d a l / t i d a l r e q u e s t . h
t i d a l / t i d a l s t r e a m u r l r e q u e s t . h
2019-06-07 20:23:05 +02:00
t i d a l / t i d a l f a v o r i t e r e q u e s t . h
2018-10-17 23:49:02 +02:00
s e t t i n g s / t i d a l s e t t i n g s p a g e . h
2019-04-14 18:02:51 +02:00
c o v e r m a n a g e r / t i d a l c o v e r p r o v i d e r . h
2018-10-17 23:49:02 +02:00
U I
s e t t i n g s / t i d a l s e t t i n g s p a g e . u i
)
2019-06-19 02:22:11 +02:00
optional_source ( HAVE_QOBUZ
S O U R C E S
q o b u z / q o b u z s e r v i c e . c p p
q o b u z / q o b u z u r l h a n d l e r . c p p
q o b u z / q o b u z b a s e r e q u e s t . c p p
q o b u z / q o b u z r e q u e s t . c p p
q o b u z / q o b u z s t r e a m u r l r e q u e s t . c p p
q o b u z / q o b u z f a v o r i t e r e q u e s t . c p p
s e t t i n g s / q o b u z s e t t i n g s p a g e . c p p
H E A D E R S
q o b u z / q o b u z s e r v i c e . h
q o b u z / q o b u z u r l h a n d l e r . h
q o b u z / q o b u z b a s e r e q u e s t . h
q o b u z / q o b u z r e q u e s t . h
q o b u z / q o b u z s t r e a m u r l r e q u e s t . h
q o b u z / q o b u z f a v o r i t e r e q u e s t . h
s e t t i n g s / q o b u z s e t t i n g s p a g e . h
U I
s e t t i n g s / q o b u z s e t t i n g s p a g e . u i
)
2019-06-17 23:54:24 +02:00
optional_source ( HAVE_SUBSONIC
S O U R C E S
s u b s o n i c / s u b s o n i c s e r v i c e . c p p
s u b s o n i c / s u b s o n i c u r l h a n d l e r . c p p
s u b s o n i c / s u b s o n i c b a s e r e q u e s t . c p p
s u b s o n i c / s u b s o n i c r e q u e s t . c p p
s e t t i n g s / s u b s o n i c s e t t i n g s p a g e . c p p
H E A D E R S
s u b s o n i c / s u b s o n i c s e r v i c e . h
s u b s o n i c / s u b s o n i c u r l h a n d l e r . h
s u b s o n i c / s u b s o n i c b a s e r e q u e s t . h
s u b s o n i c / s u b s o n i c r e q u e s t . h
s e t t i n g s / s u b s o n i c s e t t i n g s p a g e . h
U I
s e t t i n g s / s u b s o n i c s e t t i n g s p a g e . u i
)
2019-04-18 15:03:01 +02:00
# Moodbar
optional_source ( HAVE_MOODBAR
S O U R C E S
m o o d b a r / m o o d b a r b u i l d e r . c p p
m o o d b a r / m o o d b a r c o n t r o l l e r . c p p
m o o d b a r / m o o d b a r i t e m d e l e g a t e . c p p
m o o d b a r / m o o d b a r l o a d e r . c p p
m o o d b a r / m o o d b a r p i p e l i n e . c p p
m o o d b a r / m o o d b a r p r o x y s t y l e . c p p
m o o d b a r / m o o d b a r r e n d e r e r . c p p
s e t t i n g s / m o o d b a r s e t t i n g s p a g e . c p p
H E A D E R S
m o o d b a r / m o o d b a r c o n t r o l l e r . h
m o o d b a r / m o o d b a r i t e m d e l e g a t e . h
m o o d b a r / m o o d b a r l o a d e r . h
m o o d b a r / m o o d b a r p i p e l i n e . h
m o o d b a r / m o o d b a r p r o x y s t y l e . h
s e t t i n g s / m o o d b a r s e t t i n g s p a g e . h
U I
s e t t i n g s / m o o d b a r s e t t i n g s p a g e . u i
)
2019-01-01 21:56:24 +01:00
configure_file ( ${ CMAKE_CURRENT_SOURCE_DIR } /config.h.in ${ CMAKE_CURRENT_BINARY_DIR } /config.h )
configure_file ( ${ CMAKE_CURRENT_SOURCE_DIR } /version.h.in ${ CMAKE_CURRENT_BINARY_DIR } /version.h )
2018-09-10 21:58:57 +02:00
2018-02-27 18:06:05 +01:00
qt5_wrap_cpp ( MOC ${ HEADERS } )
qt5_wrap_ui ( UIC ${ UI } )
qt5_add_resources ( QRC ${ RESOURCES } )
2019-02-22 20:24:38 +01:00
if ( HAVE_TRANSLATIONS )
set ( LINGUAS "All" CACHE STRING "A space-seperated list of translations to compile in to Strawberry, or \" None\ "." )
if ( LINGUAS STREQUAL "All" )
# build LANGUAGES from all existing .po files
file ( GLOB pofiles translations/*.po )
foreach ( pofile ${ pofiles } )
get_filename_component ( lang ${ pofile } NAME_WE )
list ( APPEND LANGUAGES ${ lang } )
endforeach ( pofile )
else ( LINGUAS STREQUAL "All" )
if ( NOT LINGUAS OR LINGUAS STREQUAL "None" )
set ( LANGUAGES "" )
else ( NOT LINGUAS OR LINGUAS STREQUAL "None" )
string ( REGEX MATCHALL [a-zA-Z_@]+ LANGUAGES ${ LINGUAS } )
endif ( NOT LINGUAS OR LINGUAS STREQUAL "None" )
endif ( LINGUAS STREQUAL "All" )
add_pot ( POT
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / t r a n s l a t i o n s / h e a d e r
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / t r a n s l a t i o n s / t r a n s l a t i o n s . p o t
$ { S O U R C E S }
$ { M O C }
$ { U I C }
$ { O T H E R _ S O U R C E S }
. . / d a t a / h t m l / o a u t h s u c c e s s . h t m l
)
add_po ( PO strawberry_ LANGUAGES ${ LANGUAGES } DIRECTORY translations )
endif ( HAVE_TRANSLATIONS )
2018-02-27 18:06:05 +01:00
add_library ( strawberry_lib STATIC
$ { S O U R C E S }
$ { M O C }
$ { U I C }
$ { Q R C }
$ { P O T }
$ { P O }
$ { O T H E R _ U I C _ S O U R C E S }
)
target_link_libraries ( strawberry_lib
l i b s t r a w b e r r y - c o m m o n
l i b s t r a w b e r r y - t a g r e a d e r
2019-04-15 22:17:40 +02:00
$ { C M A K E _ T H R E A D _ L I B S _ I N I T }
2018-02-27 18:06:05 +01:00
$ { G L I B _ L I B R A R I E S }
$ { G I O _ L I B R A R I E S }
$ { G O B J E C T _ L I B R A R I E S }
2019-04-16 17:48:11 +02:00
$ { G N U T L S _ L I B R A R I E S }
2018-02-27 18:06:05 +01:00
$ { Q T _ L I B R A R I E S }
$ { C H R O M A P R I N T _ L I B R A R I E S }
2019-01-01 20:07:29 +01:00
$ { S Q L I T E _ L I B R A R I E S }
2019-04-15 22:17:40 +02:00
$ { T A G L I B _ L I B R A R I E S }
2019-01-07 01:00:58 +01:00
$ { S I N G L E A P P L I C A T I O N _ L I B R A R I E S }
2019-01-11 01:04:13 +01:00
$ { S I N G L E C O R E A P P L I C A T I O N _ L I B R A R I E S }
2018-02-27 18:06:05 +01:00
z
)
2019-01-01 20:07:29 +01:00
if ( X11_FOUND )
target_link_libraries ( strawberry_lib ${ X11_LIBRARIES } )
endif ( X11_FOUND )
if ( XCB_FOUND )
target_link_libraries ( strawberry_lib ${ XCB_LIBRARIES } )
endif ( XCB_FOUND )
2018-05-14 17:57:37 +02:00
if ( HAVE_ALSA )
2018-02-27 18:06:05 +01:00
target_link_libraries ( strawberry_lib ${ ALSA_LIBRARIES } )
2018-05-14 17:57:37 +02:00
endif ( HAVE_ALSA )
2018-02-27 18:06:05 +01:00
2018-05-15 00:25:30 +02:00
if ( HAVE_GSTREAMER )
2019-09-07 23:34:13 +02:00
target_link_libraries ( strawberry_lib ${ GSTREAMER_LIBRARIES } ${ GSTREAMER_BASE_LIBRARIES } ${ GSTREAMER_AUDIO_LIBRARIES } ${ GSTREAMER_APP_LIBRARIES } ${ GSTREAMER_TAG_LIBRARIES } ${ GSTREAMER_PBUTILS_LIBRARIES } )
2018-05-15 00:25:30 +02:00
endif ( )
if ( HAVE_XINE )
target_link_libraries ( strawberry_lib ${ LIBXINE_LIBRARIES } )
endif ( )
if ( HAVE_VLC )
target_link_libraries ( strawberry_lib ${ LIBVLC_LIBRARIES } )
endif ( )
if ( HAVE_PHONON )
target_link_libraries ( strawberry_lib ${ PHONON_LIBRARIES } )
endif ( )
2018-02-27 18:06:05 +01:00
if ( HAVE_LIBGPOD )
target_link_libraries ( strawberry_lib ${ LIBGPOD_LIBRARIES } )
endif ( HAVE_LIBGPOD )
if ( HAVE_GIO )
target_link_libraries ( strawberry_lib ${ GIO_LIBRARIES } )
endif ( HAVE_GIO )
if ( HAVE_AUDIOCD )
2019-11-15 00:22:41 +01:00
target_link_libraries ( strawberry_lib ${ LIBCDIO_LIBRARIES } )
2018-02-27 18:06:05 +01:00
endif ( HAVE_AUDIOCD )
if ( HAVE_IMOBILEDEVICE )
target_link_libraries ( strawberry_lib
2018-11-05 01:14:56 +01:00
$ { L I B I M O B I L E D E V I C E _ L I B R A R I E S }
$ { L I B P L I S T _ L I B R A R I E S }
$ { L I B U S B M U X D _ L I B R A R I E S }
2018-02-27 18:06:05 +01:00
)
2018-11-05 01:14:56 +01:00
link_directories ( ${ LIBIMOBILEDEVICE_LIBRARY_DIRS } )
link_directories ( ${ LIBUSBMUXD_LIBRARY_DIRS } )
2018-02-27 18:06:05 +01:00
endif ( HAVE_IMOBILEDEVICE )
if ( HAVE_LIBMTP )
target_link_libraries ( strawberry_lib ${ LIBMTP_LIBRARIES } )
endif ( HAVE_LIBMTP )
if ( HAVE_LIBPULSE )
target_link_libraries ( strawberry_lib ${ LIBPULSE_LIBRARIES } )
endif ( )
2019-04-18 15:03:01 +02:00
if ( HAVE_MOODBAR )
target_link_libraries ( strawberry_lib gstmoodbar )
endif ( )
2018-02-27 18:06:05 +01:00
if ( APPLE )
target_link_libraries ( strawberry_lib
" - f r a m e w o r k A p p K i t "
" - f r a m e w o r k C a r b o n "
" - f r a m e w o r k C o r e A u d i o "
" - f r a m e w o r k D i s k A r b i t r a t i o n "
" - f r a m e w o r k F o u n d a t i o n "
" - f r a m e w o r k I O K i t "
" - f r a m e w o r k S c r i p t i n g B r i d g e "
)
2018-07-03 17:51:52 +02:00
2018-02-27 18:06:05 +01:00
target_link_libraries ( strawberry_lib ${ SPMEDIAKEYTAP_LIBRARIES } )
if ( HAVE_SPARKLE )
include_directories ( ${ SPARKLE } /Headers )
target_link_libraries ( strawberry_lib ${ SPARKLE } )
endif ( HAVE_SPARKLE )
endif ( APPLE )
if ( WIN32 )
2020-01-03 02:07:37 +01:00
target_link_libraries ( strawberry_lib dsound )
2018-02-27 18:06:05 +01:00
endif ( WIN32 )
if ( UNIX AND NOT APPLE )
2018-05-14 17:57:37 +02:00
# Hack: the Gold linker pays attention to the order that libraries are specified on the link line.
# -lX11 and -ldl are provided earlier in the link command but they're actually used by libraries that appear after them, so they end up getting ignored.
# This appends them to the very end of the link line, ensuring they're always used.
2018-02-27 18:06:05 +01:00
find_package ( X11 )
2018-05-14 17:57:37 +02:00
if ( FREEBSD )
2018-02-27 18:06:05 +01:00
target_link_libraries ( strawberry_lib ${ X11_X11_LIB } )
else ( )
target_link_libraries ( strawberry_lib ${ X11_X11_LIB } ${ CMAKE_DL_LIBS } )
endif ( )
endif ( )
2019-01-12 02:07:39 +01:00
if ( NOT USE_SYSTEM_SINGLEAPPLICATION )
add_dependencies ( strawberry_lib ${ SINGLEAPPLICATION_LIBRARIES } ${ SINGLECOREAPPLICATION_LIBRARIES } )
endif ( )
2018-02-27 18:06:05 +01:00
###############################################################################
set ( EXECUTABLE_OUTPUT_PATH .. )
# Show the console window in debug mode on Windows
if ( NOT CMAKE_BUILD_TYPE STREQUAL "Debug" AND NOT ENABLE_WIN32_CONSOLE )
set ( STRAWBERRY-WIN32-FLAG WIN32 )
endif ( NOT CMAKE_BUILD_TYPE STREQUAL "Debug" AND NOT ENABLE_WIN32_CONSOLE )
2018-04-02 18:35:58 +02:00
# Resource file for windows
2018-02-27 18:06:05 +01:00
if ( WIN32 )
2018-07-01 22:26:46 +02:00
configure_file ( ${ CMAKE_CURRENT_SOURCE_DIR } /../dist/windows/windres.rc.in ${ CMAKE_CURRENT_BINARY_DIR } /windres.rc )
2018-02-27 18:06:05 +01:00
set ( STRAWBERRY-WIN32-RESOURCES windres.rc )
endif ( WIN32 )
add_executable ( strawberry
M A C O S X _ B U N D L E
$ { S T R A W B E R R Y - WIN32 - F L A G }
$ { S T R A W B E R R Y - WIN32 - R E S O U R C E S }
2019-01-01 21:48:50 +01:00
m a i n . c p p
2018-02-27 18:06:05 +01:00
)
2018-05-14 17:57:37 +02:00
if ( FREEBSD )
2018-02-27 18:06:05 +01:00
target_link_libraries ( strawberry execinfo )
2018-05-14 17:57:37 +02:00
endif ( )
2018-02-27 18:06:05 +01:00
target_link_libraries ( strawberry
s t r a w b e r r y _ l i b
)
# macdeploy.py relies on the blob being built first.
add_dependencies ( strawberry strawberry-tagreader )
2018-07-03 17:51:52 +02:00
if ( NOT APPLE )
install ( TARGETS strawberry RUNTIME DESTINATION bin )
endif ( )
2018-02-27 18:06:05 +01:00
if ( APPLE )
2019-01-04 01:13:03 +01:00
set_target_properties ( strawberry PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/../dist/macos/Info.plist" )
2018-02-27 18:06:05 +01:00
endif ( APPLE )