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
$ { 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
$ { 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 M a n a g e r . h
# Guis
$ { 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
$ { 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
$ { 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 e n e r a l S c r e e n s a v e r 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 V i d e o S c r e e n s a v e r 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 S l i d e s h o w S c r e e n s a v e r 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 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 / L a u n c h A n i m 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 / 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
$ { 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
$ { 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 M a n a g e r . c p p
# Guis
$ { 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
$ { 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
$ { 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 e n e r a l S c r e e n s a v e r 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 V i d e o S c r e e n s a v e r 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 S l i d e s h o w S c r e e n s a v e r 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 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-07 19:33:33 +00:00
#---------------------------------------------------------------------------------------------------
2020-06-24 15:38:41 +00:00
# Define OS specific sources and headers.
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 ( )
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 )
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 )
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 )
install ( TARGETS emulationstation RUNTIME DESTINATION . )
install ( FILES ../FreeImage.dll ../libcrypto-1_1-x64.dll ../libcurl-x64.dll ../libfreetype.dll
2020-08-19 20:30:10 +00:00
. . / l i b g c c _ s _ s e h - 1 . 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 s t d c + + - 6 . 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 . . / l i b w i n p t h r e a d - 1 . d l l . . / S D L 2 . d l l D E S T I N A T I O N . )
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 )
install ( TARGETS EmulationStation RUNTIME
D E S T I N A T I O N E m u l a t i o n S t a t i o n . a p p / C o n t e n t s / M a c O S )
install ( FILES ${ CMAKE_SOURCE_DIR } /LICENSE
D E S T I N A T I O N E m u l a t i o n S t a t i o n . a p p / C o n t e n t s / R e s o u r c e s )
install ( DIRECTORY ${ CMAKE_SOURCE_DIR } /resources
D E S T I N A T I O N E m u l a t i o n S t a t i o n . a p p / C o n t e n t s / 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 E m u l a t i o n S t a t i o n . a p p / C o n t e n t s / 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-19 20:30:10 +00:00
D E S T I N A T I O N E m u l a t i o n S t a t i o n . a p p / C o n t e n t s / 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 )
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 )
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.
2020-07-07 19:33:33 +00:00
set ( CPACK_PACKAGE_NAME "emulationstation-de" )
set ( CPACK_PACKAGE_DESCRIPTION_SUMMARY "An emulator front-end with controller navigation and theming support." )
set ( CPACK_PACKAGE_DESCRIPTION "EmulationStation Desktop Edition is a fast and flexible front-end for browsing and launching games from your multi-platform retro game collection. It's intended to be used in conjunction with emulators such as the RetroArch cores." )
set ( CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE" )
set ( CPACK_PACKAGE_VENDOR "Leon Styhre" )
2020-08-19 20:30:10 +00:00
# Update this when there has been a new release.
set ( CPACK_PACKAGE_VERSION "1.0.0-beta" )
# Settings per operating system and generator type.
if ( APPLE )
set ( CPACK_GENERATOR "DragNDrop" )
set ( CPACK_PACKAGE_FILE_NAME "EmulationStation-DE-${CPACK_PACKAGE_VERSION}" )
set ( CPACK_DMG_VOLUME_NAME "EmulationStation-DE ${CPACK_PACKAGE_VERSION}" )
set ( CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation.icns" )
set ( CPACK_DMG_DS_STORE "${CMAKE_CURRENT_SOURCE_DIR}/assets/EmulationStation_DS_Store" )
elseif ( WIN32 )
set ( CPACK_GENERATOR "NSIS" )
set ( CPACK_PACKAGE_FILE_NAME "EmulationStation-DE-${CPACK_PACKAGE_VERSION}-win64" )
2020-07-07 19:33:33 +00:00
set ( CPACK_PACKAGE_INSTALL_DIRECTORY "EmulationStation" )
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 )
set ( CPACK_NSIS_DISPLAY_NAME "EmulationStation Desktop Edition" )
set ( CPACK_NSIS_INSTALLED_ICON_NAME
" $ { C M A K E _ C U R R E N T _ S O U R C E _ D I R } / e s - a p p / a s s e t s / E m u l a t i o n S t a t i o n . i c o " )
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 )
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" )
2020-08-19 20:30:10 +00:00
set ( CPACK_DEBIAN_FILE_NAME "emulationstation-de-${CPACK_PACKAGE_VERSION}.deb" )
set ( CPACK_DEBIAN_PACKAGE_MAINTAINER "Leon Styhre <leon@leonstyhre.com>" )
set ( CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://gitlab.com/leonstyhre/emulationstation-de" )
set ( CPACK_DEBIAN_PACKAGE_SECTION "misc" )
set ( CPACK_DEBIAN_PACKAGE_PRIORITY "optional" )
set ( CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON )
#set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6, libsdl2-2.0-0, libfreeimage3, libfreetype6, libvlc5, libcurl4, libpugixml1v5, libasound2")
set ( CPACK_DEBIAN_PACKAGE_BUILDS_DEPENDS "debhelper (>= 8.0.0), cmake, g++ (>= 4.8), libsdl2-dev, libfreeimage-dev, libfreetype6-dev, libcurl4-openssl-dev, libpugixml-dev, rapidjson-dev, libasound2-dev, libvlc-dev, libgl1-mesa-dev" )
# Uncomment the next line to generate .rpm packages.
#set(CPACK_GENERATOR "RPM")
set ( CPACK_RPM_FILE_NAME "emulationstation-de-${CPACK_PACKAGE_VERSION}.rpm" )
set ( CPACK_RPM_PACKAGE_DESCRIPTION ${ CPACK_PACKAGE_DESCRIPTION } )
set ( CPACK_RPM_PACKAGE_REQUIRES "libc6, libsdl2-2.0-0, libfreeimage3, libfreetype6, libvlc5, libcurl4, libpugixml1v5, libasound2" )
set ( CPACK_RPM_PACKAGE_LICENSE "MIT" )
2020-07-07 19:33:33 +00:00
endif ( )
include ( CPack )