Added Qt6 build option to Cmakelists.

This commit is contained in:
mjbudd77 2021-04-11 20:34:43 -04:00
parent 806486e13d
commit ca232c8b3c
3 changed files with 56 additions and 80 deletions

View File

@ -12,7 +12,7 @@ my $PKG_OUTPUT_FILE="fceux-$VERSION-$ARCH.deb";
# the rest of the package creation is trival. # the rest of the package creation is trival.
my $SO_LIST=""; my $SO_LIST="";
$SO_LIST=`objdump -x $INSTALL_PREFIX/usr/bin/fceux`; $SO_LIST=`objdump -x $INSTALL_PREFIX/usr/bin/fceux`;
$SO_LIST= $SO_LIST . `objdump -x $INSTALL_PREFIX/usr/bin/fceux-gtk`; #$SO_LIST= $SO_LIST . `objdump -x $INSTALL_PREFIX/usr/bin/fceux-gtk`;
#print "$SO_LIST"; #print "$SO_LIST";

View File

@ -64,8 +64,8 @@ pkg-config --cflags --libs minizip
#echo '****************************************' #echo '****************************************'
#echo 'Install Dependency libgtk-3-dev' #echo 'Install Dependency libgtk-3-dev'
#echo '****************************************' #echo '****************************************'
sudo apt-get --assume-yes install libgtk-3-dev #sudo apt-get --assume-yes install libgtk-3-dev
pkg-config --cflags --libs gtk+-3.0 #pkg-config --cflags --libs gtk+-3.0
# #
## Install GTK+-3 Sourceview ## Install GTK+-3 Sourceview
#sudo apt-get --assume-yes install libgtksourceview-3.0-dev #sudo apt-get --assume-yes install libgtksourceview-3.0-dev
@ -105,15 +105,15 @@ make -j `nproc`
make install DESTDIR=$INSTALL_PREFIX make install DESTDIR=$INSTALL_PREFIX
cd ..; cd ..;
mkdir buildGTK; cd buildGTK; #mkdir buildGTK; cd buildGTK;
cmake \ #cmake \
-DGTK=1 \ # -DGTK=1 \
-DCMAKE_BUILD_TYPE=Release \ # -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \ # -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ # -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
.. # ..
make -j `nproc` #make -j `nproc`
make install DESTDIR=$INSTALL_PREFIX #make install DESTDIR=$INSTALL_PREFIX
# Install Files # Install Files
#cd .. # cd out of build #cd .. # cd out of build
@ -147,15 +147,15 @@ else
exit 1; exit 1;
fi fi
if [ -e $INSTALL_PREFIX/usr/bin/fceux-gtk ]; then #if [ -e $INSTALL_PREFIX/usr/bin/fceux-gtk ]; then
echo '**************************************************************' # echo '**************************************************************'
echo 'Printing Shared Object Dependencies for fceux-gtk Executable' # echo 'Printing Shared Object Dependencies for fceux-gtk Executable'
echo '**************************************************************' # echo '**************************************************************'
ldd $INSTALL_PREFIX/usr/bin/fceux-gtk # ldd $INSTALL_PREFIX/usr/bin/fceux-gtk
else #else
echo "Error: Executable Failed to build: $INSTALL_PREFIX/usr/bin/fceux-gtk"; # echo "Error: Executable Failed to build: $INSTALL_PREFIX/usr/bin/fceux-gtk";
exit 1; # exit 1;
fi #fi
echo '**************************************************************' echo '**************************************************************'
echo 'Printing To Be Packaged Files ' echo 'Printing To Be Packaged Files '

View File

@ -1,20 +1,32 @@
if ( ${GTK} )
message( STATUS "GUI backend: GTK")
set( APP_NAME fceux-gtk)
else()
message( STATUS "GUI backend: QT")
set( APP_NAME fceux) set( APP_NAME fceux)
set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON) set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOUIC ON)
if ( ${QT6} )
message( STATUS "GUI backend: QT6")
set( Qt Qt6 )
else()
message( STATUS "GUI backend: QT5")
set( Qt Qt5 )
endif()
if ( ${QT6} )
find_package( Qt6 COMPONENTS Widgets OpenGL OpenGLWidgets REQUIRED)
add_definitions( ${Qt6Widgets_DEFINITIONS} ${Qt6OpenGLWidgets_DEFINITIONS} )
include_directories( ${Qt6Widgets_INCLUDE_DIRS} ${QtOpenGLWidgets_INCLUDE_DIRS} )
else()
find_package( Qt5 COMPONENTS Widgets OpenGL REQUIRED)
add_definitions( ${Qt5Widgets_DEFINITIONS} )
include_directories( ${Qt5Widgets_INCLUDE_DIRS} )
endif() endif()
if(WIN32) if(WIN32)
find_package(OpenGL REQUIRED) find_package(OpenGL REQUIRED)
find_package(Qt5 COMPONENTS Widgets OpenGL REQUIRED) #find_package(Qt5 COMPONENTS Widgets OpenGL REQUIRED)
add_definitions( ${Qt5Widgets_DEFINITIONS} ) #add_definitions( ${Qt5Widgets_DEFINITIONS} )
include_directories( ${Qt5Widgets_INCLUDE_DIRS} ) #include_directories( ${Qt5Widgets_INCLUDE_DIRS} )
add_definitions( -DMSVC -D_CRT_SECURE_NO_WARNINGS ) add_definitions( -DMSVC -D_CRT_SECURE_NO_WARNINGS )
add_definitions( -D__SDL__ -D__QT_DRIVER__ -DQT_DEPRECATED_WARNINGS ) add_definitions( -D__SDL__ -D__QT_DRIVER__ -DQT_DEPRECATED_WARNINGS )
add_definitions( -DFCEUDEF_DEBUGGER ) add_definitions( -DFCEUDEF_DEBUGGER )
@ -44,17 +56,16 @@ else(WIN32)
add_definitions( -Wall -Wno-write-strings -Wno-sign-compare -Wno-parentheses -Wno-unused-local-typedefs -fPIC ) add_definitions( -Wall -Wno-write-strings -Wno-sign-compare -Wno-parentheses -Wno-unused-local-typedefs -fPIC )
add_definitions( -DFCEUDEF_DEBUGGER ) add_definitions( -DFCEUDEF_DEBUGGER )
if ( ${GTK} ) #if ( ${QT6} )
pkg_check_modules( GTK3 REQUIRED gtk+-3.0) # find_package( Qt6 COMPONENTS Widgets OpenGL OpenGLWidgets REQUIRED)
pkg_check_modules( X11 REQUIRED x11) # add_definitions( ${Qt6Widgets_DEFINITIONS} ${Qt6OpenGLWidgets_DEFINITIONS} )
add_definitions( ${GTK3_CFLAGS} ${X11_CFLAGS} ) # include_directories( ${Qt6Widgets_INCLUDE_DIRS} ${QtOpenGLWidgets_INCLUDE_DIRS} )
add_definitions( -D_GTK -DOPENGL ) #else()
else(${GTK}) # find_package( Qt5 COMPONENTS Widgets OpenGL REQUIRED)
find_package(Qt5 COMPONENTS Widgets OpenGL REQUIRED) # add_definitions( ${Qt5Widgets_DEFINITIONS} )
add_definitions( ${Qt5Widgets_DEFINITIONS} ) # include_directories( ${Qt5Widgets_INCLUDE_DIRS} )
include_directories( ${Qt5Widgets_INCLUDE_DIRS} ) #endif()
add_definitions( -D__QT_DRIVER__ -DQT_DEPRECATED_WARNINGS ) add_definitions( -D__QT_DRIVER__ -DQT_DEPRECATED_WARNINGS )
endif()
# Check for libminizip # Check for libminizip
pkg_check_modules( MINIZIP REQUIRED minizip) pkg_check_modules( MINIZIP REQUIRED minizip)
@ -429,25 +440,6 @@ set(SRC_DRIVERS_COMMON
#${CMAKE_CURRENT_SOURCE_DIR}/drivers/videolog/rgbtorgb.cpp #${CMAKE_CURRENT_SOURCE_DIR}/drivers/videolog/rgbtorgb.cpp
) )
if ( ${GTK} )
set(SRC_DRIVERS_SDL
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/cheat.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/config.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/debugger.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/glxwin.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/gui.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/GamePadConf.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/input.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/memview.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/ramwatch.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/sdl.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/sdl-joystick.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/sdl-sound.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/sdl-throttle.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/sdl-video.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/sdl/unix-netplay.cpp
)
else()
set(SRC_DRIVERS_SDL set(SRC_DRIVERS_SDL
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/main.cpp ${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/main.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/ConsoleWindow.cpp ${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/ConsoleWindow.cpp
@ -492,7 +484,6 @@ set(SRC_DRIVERS_SDL
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/sdl-throttle.cpp ${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/sdl-throttle.cpp
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/unix-netplay.cpp ${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/unix-netplay.cpp
) )
endif()
set(SOURCES ${SRC_CORE} ${SRC_DRIVERS_COMMON} ${SRC_DRIVERS_SDL}) set(SOURCES ${SRC_CORE} ${SRC_DRIVERS_COMMON} ${SRC_DRIVERS_SDL})
@ -521,35 +512,20 @@ add_executable( ${APP_NAME} MACOSX_BUNDLE ${APP_ICON} ${SOURCES} ../resources.
else() else()
if ( ${GTK} ) add_executable( ${APP_NAME} ${SOURCES} ../resources.qrc
add_executable( ${APP_NAME} ${SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/fceux_git_info.cpp)
${CMAKE_CURRENT_BINARY_DIR}/fceux_git_info.cpp)
else()
add_executable( ${APP_NAME} ${SOURCES} ../resources.qrc
${CMAKE_CURRENT_BINARY_DIR}/fceux_git_info.cpp)
endif()
endif() endif()
if ( ${GTK} )
target_link_libraries( ${APP_NAME}
${GTK3_LDFLAGS} ${X11_LDFLAGS}
${OPENGL_LDFLAGS}
${SDL2_LDFLAGS}
${MINIZIP_LDFLAGS} ${ZLIB_LIBRARIES}
${LUA_LDFLAGS}
${SYS_LIBS}
)
else()
target_link_libraries( ${APP_NAME} target_link_libraries( ${APP_NAME}
${Qt5Widgets_LIBRARIES} ${${Qt}Widgets_LIBRARIES}
${Qt5OpenGL_LIBRARIES} ${${Qt}OpenGL_LIBRARIES}
${${Qt}OpenGLWidgets_LIBRARIES}
${OPENGL_LDFLAGS} ${OPENGL_LDFLAGS}
${SDL2_LDFLAGS} ${SDL2_LDFLAGS}
${MINIZIP_LDFLAGS} ${ZLIB_LIBRARIES} ${MINIZIP_LDFLAGS} ${ZLIB_LIBRARIES}
${LUA_LDFLAGS} ${LUA_LDFLAGS}
${SYS_LIBS} ${SYS_LIBS}
) )
endif()
if (WIN32) if (WIN32)
# target_link_libraries( ${APP_NAME} wsock32 ws2_32 ) # target_link_libraries( ${APP_NAME} wsock32 ws2_32 )