2020-06-24 15:38:41 +00:00
project ( "emulationstation-de" )
2014-06-25 16:29:58 +00:00
set ( ES_HEADERS
2020-08-19 20:30:10 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / E m u l a t i o n S t a t i o n . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / F i l e D a t a . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / F i l e S o r t s . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / M e t a D a t a . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / P l a t f o r m I d . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / S y s t e m D a t a . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / V o l u m e C o n t r o l . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / G a m e l i s t . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / F i l e F i l t e r I n d e x . h
2020-11-10 21:33:57 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / S y s t e m S c r e e n s a v e r . h
2020-12-23 17:06:30 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / C o l l e c t i o n S y s t e m s M a n a g e r . h
2020-08-19 20:30:10 +00:00
2021-01-21 20:44:51 +00:00
# GUIs
2020-08-19 20:30:10 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i M e t a D a t a E d . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i G a m e S c r a p e r . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i G a m e l i s t O p t i o n s . h
2020-11-05 17:35:08 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r e e n s a v e r O p t i o n s . h
2020-08-19 20:30:10 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i M e n u . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S e t t i n g s . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r a p e r M e n u . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r a p e r M u l t i . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r a p e r S e a r c h . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i G a m e l i s t F i l t e r . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i C o l l e c t i o n S y s t e m s O p t i o n s . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i I n f o P o p u p . h
# Scrapers
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / S c r a p e r . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / G a m e s D B J S O N S c r a p e r . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / G a m e s D B J S O N S c r a p e r R e s o u r c e s . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / S c r e e n S c r a p e r . h
# Views
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / B a s i c G a m e L i s t V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / D e t a i l e d G a m e L i s t V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / I G a m e L i s t V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / I S i m p l e G a m e L i s t V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / G r i d G a m e L i s t V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / V i d e o G a m e L i s t V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / S y s t e m V i e w . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / V i e w C o n t r o l l e r . h
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / U I M o d e C o n t r o l l e r . h
# Animations
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / a n i m a t i o n s / M o v e C a m e r a A n i m a t i o n . h
2014-06-25 16:29:58 +00:00
)
set ( ES_SOURCES
2020-08-19 20:30:10 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / F i l e D a t a . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / F i l e S o r t s . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / m a i n . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / M e t a D a t a . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / P l a t f o r m I d . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / S y s t e m D a t a . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / V o l u m e C o n t r o l . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / G a m e l i s t . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / F i l e F i l t e r I n d e x . c p p
2020-11-10 21:33:57 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / S y s t e m S c r e e n s a v e r . c p p
2020-12-23 17:06:30 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / C o l l e c t i o n S y s t e m s M a n a g e r . c p p
2020-08-19 20:30:10 +00:00
2021-01-21 20:44:51 +00:00
# GUIs
2020-08-19 20:30:10 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i M e t a D a t a E d . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i G a m e S c r a p e r . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i G a m e l i s t O p t i o n s . c p p
2020-11-05 17:35:08 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r e e n s a v e r O p t i o n s . c p p
2020-08-19 20:30:10 +00:00
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i M e n u . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S e t t i n g s . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r a p e r M e n u . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r a p e r M u l t i . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i S c r a p e r S e a r c h . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i G a m e l i s t F i l t e r . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i C o l l e c t i o n S y s t e m s O p t i o n s . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / g u i s / G u i I n f o P o p u p . c p p
# Scrapers
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / S c r a p e r . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / G a m e s D B J S O N S c r a p e r . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / G a m e s D B J S O N S c r a p e r R e s o u r c e s . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / s c r a p e r s / S c r e e n S c r a p e r . c p p
# Views
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / B a s i c G a m e L i s t V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / D e t a i l e d G a m e L i s t V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / I G a m e L i s t V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / I S i m p l e G a m e L i s t V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / G r i d G a m e L i s t V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / g a m e l i s t / V i d e o G a m e L i s t V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / S y s t e m V i e w . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / V i e w C o n t r o l l e r . c p p
$ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / s r c / v i e w s / U I M o d e C o n t r o l l e r . c p p
2014-06-25 16:29:58 +00:00
)
2020-07-03 18:23:51 +00:00
if ( WIN32 )
2020-08-19 20:30:10 +00:00
LIST ( APPEND ES_SOURCES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/EmulationStation.rc )
2014-06-25 16:29:58 +00:00
endif ( )
2021-01-21 20:44:51 +00:00
#---------------------------------------------------------------------------------------------------
# OS-specific installation and package generation setup.
2020-06-24 15:38:41 +00:00
# Define target.
2020-08-19 20:30:10 +00:00
if ( APPLE OR WIN32 )
include_directories ( ${ COMMON_INCLUDE_DIRS } ${ CMAKE_CURRENT_SOURCE_DIR } /src )
add_executable ( EmulationStation ${ ES_SOURCES } ${ ES_HEADERS } )
target_link_libraries ( EmulationStation ${ COMMON_LIBRARIES } es-core )
2020-12-20 12:13:12 +00:00
set_target_properties ( EmulationStation PROPERTIES INSTALL_RPATH_USE_LINK_PATH TRUE )
2020-08-19 20:30:10 +00:00
else ( )
include_directories ( ${ COMMON_INCLUDE_DIRS } ${ CMAKE_CURRENT_SOURCE_DIR } /src )
add_executable ( emulationstation ${ ES_SOURCES } ${ ES_HEADERS } )
target_link_libraries ( emulationstation ${ COMMON_LIBRARIES } es-core )
2020-11-26 19:03:37 +00:00
set_target_properties ( emulationstation PROPERTIES INSTALL_RPATH_USE_LINK_PATH TRUE )
2020-08-19 20:30:10 +00:00
endif ( )
2014-06-25 16:29:58 +00:00
2020-08-19 20:30:10 +00:00
# Setup for installation and package generation.
2020-07-07 19:33:33 +00:00
if ( WIN32 )
2020-08-23 19:27:01 +00:00
install ( TARGETS EmulationStation RUNTIME DESTINATION . )
2020-12-28 22:23:01 +00:00
if ( "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC" )
install ( FILES ../FreeImage.dll ../glew32.dll ../libcrypto-1_1-x64.dll ../libcurl-x64.dll
2020-12-29 16:44:00 +00:00
. . / f r e e t y p e . d l l . . / p u g i x m l . d l l . . / l i b s s l - 1 _ 1 - x 6 4 . d l l . . / l i b v l c . d l l
. . / l i b v l c c o r e . d l l . . / S D L 2 . d l l . . / M S V C P 1 4 0 . d l l . . / V C O M P 1 4 0 . D L L . . / V C R U N T I M E 1 4 0 . d l l
. . / V C R U N T I M E 1 4 0 _ 1 . d l l D E S T I N A T I O N . )
2020-12-28 22:23:01 +00:00
else ( )
install ( FILES ../FreeImage.dll ../glew32.dll ../libcrypto-1_1-x64.dll ../libcurl-x64.dll
2020-12-29 21:20:08 +00:00
. . / l i b f r e e t y p e . d l l . . / l i b p u g i x m l . d l l . . / l i b s s l - 1 _ 1 - x 6 4 . d l l . . / l i b v l c . d l l
. . / l i b v l c c o r e . d l l . . / S D L 2 . d l l . . / v c o m p 1 4 0 . d l l D E S T I N A T I O N . )
2020-12-28 22:23:01 +00:00
endif ( )
2020-07-16 18:34:02 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /plugins DESTINATION . )
2020-07-07 19:33:33 +00:00
install ( FILES ../LICENSE DESTINATION . )
2020-08-19 20:50:45 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /licenses DESTINATION . )
2020-07-07 19:33:33 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /themes DESTINATION . )
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /resources DESTINATION . )
2020-08-19 20:30:10 +00:00
elseif ( APPLE )
2020-08-21 19:58:12 +00:00
# For completely unknown reasons, when generating a Bundle using cpack, an extra 'Resources'
# directory is added to the target path. Simply adding the two dots as a prefix fixes the
# problem, but doing so would break 'make install' which was actually behaving correctly.
# So an extra 'Resources' directory was added to the CMAKE_INSTALL_PREFIX variable as well
# to compensate for this. It's a bad solution to the problem and there must surely be a
# better way to fix this.
2020-08-19 20:30:10 +00:00
install ( TARGETS EmulationStation RUNTIME
2020-08-21 19:58:12 +00:00
D E S T I N A T I O N . . / M a c O S )
install ( FILES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/EmulationStation-DE.icns
D E S T I N A T I O N . . / R e s o u r c e s )
install ( FILES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/EmulationStation-DE_Info.plist
D E S T I N A T I O N . . R E N A M E I n f o . p l i s t )
2020-08-23 09:35:02 +00:00
# Another hack/workaround. I have not been able to find any way whatsover to force the
# linker to use rpaths for all shared libraries instead of absolute paths. So instead
# we're running install_name_tool as a post-build command to manually change the absolute
# paths to the rpaths for these libraries. The worst thing about this approach is that
# the library version needs to be manually changed here depending on what's installed
# on your system (e.g. if using libSDL2-2.1.0.dylib instead of libSDL2-2.0.0.dylib).
# This problem definitely needs to be resolved properly at a later date.
add_custom_command ( TARGET EmulationStation POST_BUILD COMMAND ${ CMAKE_INSTALL_NAME_TOOL }
- c h a n g e / u s r / l o c a l / o p t / f r e e i m a g e / l i b / l i b f r e e i m a g e . d y l i b @ r p a t h / l i b f r e e i m a g e . d y l i b
- c h a n g e / u s r / l o c a l / o p t / f r e e t y p e / l i b / l i b f r e e t y p e . 6 . d y l i b @ r p a t h / l i b f r e e t y p e . 6 . d y l i b
2020-11-27 16:50:28 +00:00
- c h a n g e / u s r / l o c a l / o p t / l i b p n g / l i b / l i b p n g 1 6 . 1 6 . d y l i b @ r p a t h / l i b p n g 1 6 . 1 6 . d y l i b
2020-08-23 09:35:02 +00:00
- c h a n g e / u s r / l o c a l / o p t / s d l 2 / l i b / l i b S D L 2 - 2 . 0 . 0 . d y l i b @ r p a t h / l i b S D L 2 - 2 . 0 . 0 . d y l i b
$ < T A R G E T _ F I L E : E m u l a t i o n S t a t i o n > )
2020-11-27 16:50:28 +00:00
set ( APPLE_DYLIB_PERMISSIONS
O W N E R _ W R I T E O W N E R _ R E A D O W N E R _ E X E C U T E
G R O U P _ R E A D G R O U P _ E X E C U T E
W O R L D _ R E A D W O R L D _ E X E C U T E )
2020-08-23 09:35:02 +00:00
if ( NOT APPLE_SKIP_INSTALL_LIBS )
install ( FILES ${ CMAKE_SOURCE_DIR } /libfreeimage.dylib
2020-11-27 16:50:28 +00:00
P E R M I S S I O N S $ { A P P L E _ D Y L I B _ P E R M I S S I O N S } D E S T I N A T I O N . . / M a c O S )
2020-08-23 09:35:02 +00:00
install ( FILES ${ CMAKE_SOURCE_DIR } /libfreetype.6.dylib
2020-11-27 16:50:28 +00:00
P E R M I S S I O N S $ { A P P L E _ D Y L I B _ P E R M I S S I O N S } D E S T I N A T I O N . . / M a c O S )
install ( FILES ${ CMAKE_SOURCE_DIR } /libpng16.16.dylib
P E R M I S S I O N S $ { A P P L E _ D Y L I B _ P E R M I S S I O N S } D E S T I N A T I O N . . / M a c O S )
2020-08-23 09:35:02 +00:00
install ( FILES ${ CMAKE_SOURCE_DIR } /libSDL2-2.0.0.dylib
2020-11-27 16:50:28 +00:00
P E R M I S S I O N S $ { A P P L E _ D Y L I B _ P E R M I S S I O N S } D E S T I N A T I O N . . / M a c O S )
2020-08-23 09:35:02 +00:00
install ( FILES ${ CMAKE_SOURCE_DIR } /libvlc.dylib
2020-11-27 16:50:28 +00:00
P E R M I S S I O N S $ { A P P L E _ D Y L I B _ P E R M I S S I O N S } D E S T I N A T I O N . . / M a c O S )
2020-08-23 09:35:02 +00:00
install ( FILES ${ CMAKE_SOURCE_DIR } /libvlccore.dylib
2020-11-27 16:50:28 +00:00
P E R M I S S I O N S $ { A P P L E _ D Y L I B _ P E R M I S S I O N S } D E S T I N A T I O N . . / M a c O S )
2020-08-23 09:35:02 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /plugins
D E S T I N A T I O N . . / M a c O S )
endif ( )
2020-08-19 20:30:10 +00:00
install ( FILES ${ CMAKE_SOURCE_DIR } /LICENSE
2020-08-21 19:58:12 +00:00
D E S T I N A T I O N . . / R e s o u r c e s )
2020-08-23 09:35:02 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /resources
D E S T I N A T I O N . . / R e s o u r c e s )
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /themes
D E S T I N A T I O N . . / R e s o u r c e s )
2020-08-19 20:50:45 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /licenses
2020-08-21 19:58:12 +00:00
D E S T I N A T I O N . . / R e s o u r c e s )
2020-07-07 19:33:33 +00:00
else ( )
install ( TARGETS emulationstation RUNTIME
2020-08-19 20:30:10 +00:00
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / b i n )
2021-04-02 10:38:31 +00:00
if ( ${ CMAKE_SYSTEM_NAME } MATCHES "Linux" )
install ( FILES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/emulationstation.6.gz
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / m a n / m a n 6 )
else ( )
install ( FILES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/emulationstation.6.gz
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / m a n / m a n 6 )
endif ( )
2020-07-12 14:23:49 +00:00
install ( FILES ${ CMAKE_SOURCE_DIR } /LICENSE
2020-08-19 20:30:10 +00:00
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / e m u l a t i o n s t a t i o n )
install ( FILES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/emulationstation.desktop
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / a p p l i c a t i o n s )
install ( FILES ${ CMAKE_CURRENT_SOURCE_DIR } /assets/emulationstation.svg
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / p i x m a p s )
2020-08-19 20:50:45 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /licenses
2020-08-19 20:30:10 +00:00
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / e m u l a t i o n s t a t i o n )
2020-07-07 19:33:33 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /themes
2020-08-19 20:30:10 +00:00
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / e m u l a t i o n s t a t i o n )
2020-07-07 19:33:33 +00:00
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /resources
2020-08-19 20:30:10 +00:00
D E S T I N A T I O N $ { C M A K E _ I N S T A L L _ P R E F I X } / s h a r e / e m u l a t i o n s t a t i o n )
2020-07-07 19:33:33 +00:00
endif ( )
include ( InstallRequiredSystemLibraries )
#---------------------------------------------------------------------------------------------------
2020-08-19 20:30:10 +00:00
# General CPack settings.
2021-01-21 20:44:51 +00:00
2020-07-07 19:33:33 +00:00
set ( CPACK_PACKAGE_NAME "emulationstation-de" )
2021-01-01 21:47:40 +00:00
set ( CPACK_PACKAGE_DESCRIPTION_SUMMARY "EmulationStation Desktop Edition is a front-end for browsing and launching games from your multi-platform game collection" )
2020-12-30 11:48:48 +00:00
set ( CPACK_PACKAGE_DESCRIPTION "ES-DE is a feature-rich gaming front-end that is intended to be used in conjunction with emulators such as the RetroArch cores." )
2020-09-17 19:49:40 +00:00
if ( APPLE )
2020-11-30 17:58:55 +00:00
# Shorter line length license file to be able to fit inside the drag-and-drop installer window without introducing extra line breaks.
set ( CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation-DE_LICENSE_macOS" )
elseif ( WIN32 )
# The installer window looks a bit different on Windows so a specific file for this OS is required.
set ( CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation-DE_LICENSE_Windows" )
2020-09-17 19:49:40 +00:00
else ( )
2020-11-30 17:58:55 +00:00
set ( CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE" )
2020-09-17 19:49:40 +00:00
endif ( )
2020-07-07 19:33:33 +00:00
set ( CPACK_PACKAGE_VENDOR "Leon Styhre" )
2020-08-19 20:30:10 +00:00
# Update this when there has been a new release.
2021-04-25 20:10:32 +00:00
set ( CPACK_PACKAGE_VERSION "1.1.0-alpha" )
2020-08-19 20:30:10 +00:00
2021-03-27 10:13:43 +00:00
# Use the shorter x64 descriptor if on the x86_64/AMD64 architecture.
if ( CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL x86_64 OR CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL AMD64 )
set ( CPU_ARCHITECTURE "x64" )
else ( )
set ( CPU_ARCHITECTURE "${CMAKE_HOST_SYSTEM_PROCESSOR}" )
endif ( )
2020-08-19 20:30:10 +00:00
# Settings per operating system and generator type.
if ( APPLE )
2020-08-21 19:58:12 +00:00
set ( CPACK_GENERATOR "Bundle" )
2021-04-07 16:32:22 +00:00
if ( ${ CMAKE_OSX_DEPLOYMENT_TARGET } VERSION_LESS 10.14 )
set ( CPACK_PACKAGE_FILE_NAME "EmulationStation-DE-${CPACK_PACKAGE_VERSION}-${CPU_ARCHITECTURE}_legacy" )
set ( CPACK_DMG_VOLUME_NAME "EmulationStation Desktop Edition ${CPACK_PACKAGE_VERSION}_legacy" )
else ( )
set ( CPACK_PACKAGE_FILE_NAME "EmulationStation-DE-${CPACK_PACKAGE_VERSION}-${CPU_ARCHITECTURE}" )
set ( CPACK_DMG_VOLUME_NAME "EmulationStation Desktop Edition ${CPACK_PACKAGE_VERSION}" )
endif ( )
2020-08-21 19:58:12 +00:00
set ( CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation-DE.icns" )
set ( CPACK_DMG_DS_STORE "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation-DE_DS_Store" )
2020-08-23 09:35:02 +00:00
set ( CPACK_BUNDLE_NAME "EmulationStation Desktop Edition" )
2020-08-21 19:58:12 +00:00
set ( CPACK_BUNDLE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation-DE.icns" )
set ( CPACK_BUNDLE_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation-DE_Info.plist" )
2021-04-06 22:39:12 +00:00
# Uncomment the following lines and change to your certificate identity to enable code signing.
#set(CPACK_BUNDLE_APPLE_CERT_APP "Developer ID Application: <identity>")
#if(${CMAKE_OSX_DEPLOYMENT_TARGET} VERSION_GREATER 10.13)
# set(CPACK_BUNDLE_APPLE_CODESIGN_PARAMETER "--deep --force --options runtime")
#endif()
2020-08-19 20:30:10 +00:00
elseif ( WIN32 )
set ( CPACK_GENERATOR "NSIS" )
2021-03-27 10:13:43 +00:00
set ( CPACK_PACKAGE_FILE_NAME "EmulationStation-DE-${CPACK_PACKAGE_VERSION}-${CPU_ARCHITECTURE}" )
2020-11-30 17:58:55 +00:00
set ( CPACK_PACKAGE_INSTALL_DIRECTORY "EmulationStation-DE" )
2020-07-07 19:33:33 +00:00
set ( CPACK_PACKAGE_EXECUTABLES "EmulationStation" "EmulationStation" )
2020-08-19 20:30:10 +00:00
set ( CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64" )
set ( CPACK_NSIS_EXECUTABLES_DIRECTORY "." )
set ( CPACK_NSIS_MUI_ICON "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation.ico" )
set ( CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON )
2020-12-30 14:13:44 +00:00
set ( CPACK_NSIS_DISPLAY_NAME "EmulationStation Desktop Edition ${CPACK_PACKAGE_VERSION}" )
set ( CPACK_NSIS_PACKAGE_NAME "EmulationStation Desktop Edition" )
2020-11-30 17:58:55 +00:00
set ( CPACK_NSIS_INSTALLED_ICON_NAME "EmulationStation.exe" )
2020-08-19 20:30:10 +00:00
set ( CPACK_NSIS_WELCOME_TITLE "EmulationStation Desktop Edition Installer" )
set ( CPACK_NSIS_FINISH_TITLE "EmulationStation Desktop Edition Installation Completed" )
set ( CPACK_NSIS_MANIFEST_DPI_AWARE ON )
2021-04-03 14:44:57 +00:00
set ( CPACK_NSIS_MENU_LINKS "https://es-de.org" "ES-DE Website" "https://es-de.org/#Donations" "Please Donate" )
2020-07-07 19:33:33 +00:00
else ( )
set ( CPACK_PACKAGE_INSTALL_DIRECTORY "emulationstation_${CMAKE_PACKAGE_VERSION}" )
set ( CPACK_PACKAGE_EXECUTABLES "emulationstation" "emulationstation" )
set ( CPACK_GENERATOR "DEB" )
2021-03-27 10:13:43 +00:00
set ( CPACK_DEBIAN_FILE_NAME "emulationstation-de-${CPACK_PACKAGE_VERSION}-${CPU_ARCHITECTURE}.deb" )
2020-08-19 20:30:10 +00:00
set ( CPACK_DEBIAN_PACKAGE_MAINTAINER "Leon Styhre <leon@leonstyhre.com>" )
2021-03-14 10:20:44 +00:00
set ( CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://es-de.org" )
2020-08-19 20:30:10 +00:00
set ( CPACK_DEBIAN_PACKAGE_SECTION "misc" )
set ( CPACK_DEBIAN_PACKAGE_PRIORITY "optional" )
2020-11-28 21:18:47 +00:00
set ( CPACK_DEBIAN_PACKAGE_DEPENDS "vlc" )
2020-08-19 20:30:10 +00:00
set ( CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON )
# Uncomment the next line to generate .rpm packages.
#set(CPACK_GENERATOR "RPM")
2021-03-27 10:13:43 +00:00
set ( CPACK_RPM_FILE_NAME "emulationstation-de-${CPACK_PACKAGE_VERSION}-${CPU_ARCHITECTURE}.rpm" )
2020-08-19 20:30:10 +00:00
set ( CPACK_RPM_PACKAGE_DESCRIPTION ${ CPACK_PACKAGE_DESCRIPTION } )
set ( CPACK_RPM_PACKAGE_LICENSE "MIT" )
2020-11-29 10:18:39 +00:00
set ( CPACK_RPM_PACKAGE_REQUIRES "vlc" )
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}" )
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}/bin" )
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}/share" )
2021-04-02 11:05:24 +00:00
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}/share/man" )
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}/share/man/man6" )
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}/share/pixmaps" )
2020-11-29 10:18:39 +00:00
list ( APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CMAKE_INSTALL_PREFIX}/share/applications" )
2020-07-07 19:33:33 +00:00
endif ( )
include ( CPack )