GTK GUI :

- Improved the CMake script
- Removed some leftover debug code
- Simplified the menu appearance
- Made the debian packaging scripts use the cmake build system
- Added the GTK build to the debian package
This commit is contained in:
bgk 2008-04-20 19:52:18 +00:00
parent 35cf9fe4d9
commit caf0e8fced
8 changed files with 2755 additions and 3594 deletions

View File

@ -1,3 +1,4 @@
cmake_minimum_required(VERSION 2.4.0)
SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMakeScripts) SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMakeScripts)
INCLUDE(CMakeScripts/CMakeDetermineASMCompiler.cmake) INCLUDE(CMakeScripts/CMakeDetermineASMCompiler.cmake)
INCLUDE(CMakeScripts/CMakeASMInformation.cmake) INCLUDE(CMakeScripts/CMakeASMInformation.cmake)
@ -15,21 +16,32 @@ PKG_CHECK_MODULES ( GLADEMM libglademm-2.4 )
PKG_CHECK_MODULES ( PORTAUDIO portaudio-2.0 ) PKG_CHECK_MODULES ( PORTAUDIO portaudio-2.0 )
PKG_CHECK_MODULES ( SDL sdl ) PKG_CHECK_MODULES ( SDL sdl )
IF(${SDL_FOUND}) IF( SDL_FOUND )
SET( CAN_BUILD_VBAM 1 ) SET( CAN_BUILD_VBAM 1 )
ELSE(${SDL_FOUND}) ENDIF( SDL_FOUND )
SET( CAN_BUILD_VBAM 0 )
ENDIF(${SDL_FOUND})
IF(${GLIBMM_FOUND} AND ${GTKMM_FOUND} AND ${GLADEMM_FOUND} AND ${PORTAUDIO_FOUND}) IF( GLIBMM_FOUND AND GTKMM_FOUND AND GLADEMM_FOUND AND PORTAUDIO_FOUND )
SET( CAN_BUILD_GVBAM 1 ) SET( CAN_BUILD_GVBAM 1 )
ELSE(${GLIBMM_FOUND} AND ${GTKMM_FOUND} AND ${GLADEMM_FOUND} AND ${PORTAUDIO_FOUND}) ENDIF( GLIBMM_FOUND AND GTKMM_FOUND AND GLADEMM_FOUND AND PORTAUDIO_FOUND )
SET( CAN_BUILD_GVBAM 0 )
ENDIF(${GLIBMM_FOUND} AND ${GTKMM_FOUND} AND ${GLADEMM_FOUND} AND ${PORTAUDIO_FOUND})
ADD_DEFINITIONS (-DHAVE_NETINET_IN_H -DHAVE_ARPA_INET_H -DHAVE_ZLIB_H -DFINAL_VERSION -DBKPT_SUPPORT -DSDL -DUSE_OPENGL -DC_CORE -DSYSCONFDIR='"/etc"') IF( NOT DATA_INSTALL_DIR )
SET( DATA_INSTALL_DIR "src/gtk" )
SET( PKGDATADIR ${DATA_INSTALL_DIR} )
ELSE( NOT DATA_INSTALL_DIR )
SET( PKGDATADIR ${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR} )
ENDIF( NOT DATA_INSTALL_DIR )
ADD_DEFINITIONS (-DVERSION='"1.8.0"' -DPKGDATADIR='"src/gtk"' -DPACKAGE='') IF( NOT SYSCONFDIR )
SET( SYSCONFDIR "/etc" )
ENDIF( NOT SYSCONFDIR )
IF( NOT VERSION )
SET( VERSION "1.8.0-SVN" )
ENDIF( NOT VERSION )
ADD_DEFINITIONS (-DHAVE_NETINET_IN_H -DHAVE_ARPA_INET_H -DHAVE_ZLIB_H -DFINAL_VERSION -DBKPT_SUPPORT -DSDL -DUSE_OPENGL -DC_CORE -DSYSCONFDIR='"${SYSCONFDIR}"')
ADD_DEFINITIONS (-DVERSION='"${VERSION}"' -DPKGDATADIR='"${PKGDATADIR}"' -DPACKAGE='')
SET( CMAKE_ASM_FLAGS "-Isrc/hq/asm/ -O1 -DELF") SET( CMAKE_ASM_FLAGS "-Isrc/hq/asm/ -O1 -DELF")
SET( CMAKE_C_FLAGS "-O3") SET( CMAKE_C_FLAGS "-O3")
@ -133,11 +145,11 @@ SET(SRC_GTK
src/gtk/sndPortAudio.cpp src/gtk/sndPortAudio.cpp
) )
IF(CMAKE_ASM_COMPILER_LOADED) IF(CMAKE_ASM_COMPILER_LOADED AND USEASM)
SET(SRC_HQ ${SRC_HQ_ASM}) SET(SRC_HQ ${SRC_HQ_ASM})
ELSE(CMAKE_ASM_COMPILER_LOADED) ELSE(CMAKE_ASM_COMPILER_LOADED AND USEASM)
SET(SRC_HQ ${SRC_HQ_C}) SET(SRC_HQ ${SRC_HQ_C})
ENDIF(CMAKE_ASM_COMPILER_LOADED) ENDIF(CMAKE_ASM_COMPILER_LOADED AND USEASM)
include_directories( include_directories(
${GTKMM_INCLUDE_DIRS} ${GTKMM_INCLUDE_DIRS}
@ -154,7 +166,7 @@ ADD_LIBRARY (
${SRC_FEX_MINI} ${SRC_FEX_MINI}
) )
IF(${CAN_BUILD_VBAM}) IF( CAN_BUILD_VBAM )
ADD_EXECUTABLE ( ADD_EXECUTABLE (
vbam vbam
WIN32 WIN32
@ -171,9 +183,15 @@ IF(${CAN_BUILD_VBAM})
${PNG_LIBRARY} ${PNG_LIBRARY}
${OPENGL_LIBRARY} ${OPENGL_LIBRARY}
) )
ENDIF(${CAN_BUILD_VBAM})
IF(${CAN_BUILD_GVBAM}) INSTALL(PROGRAMS vbam DESTINATION bin)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/sdl/VisualBoyAdvance.cfg-example
DESTINATION ${SYSCONFDIR}
RENAME VisualBoyAdvance.cfg)
ENDIF( CAN_BUILD_VBAM )
IF( CAN_BUILD_GVBAM )
ADD_EXECUTABLE ( ADD_EXECUTABLE (
gvbam gvbam
WIN32 WIN32
@ -189,4 +207,9 @@ IF(${CAN_BUILD_GVBAM})
${GLADEMM_LIBRARIES} ${GLADEMM_LIBRARIES}
${PORTAUDIO_LIBRARIES} ${PORTAUDIO_LIBRARIES}
) )
ENDIF(${CAN_BUILD_GVBAM})
INSTALL(PROGRAMS gvbam DESTINATION bin)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/gtk/vba.glade DESTINATION ${DATA_INSTALL_DIR})
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/gtk/icons/vba-m.png DESTINATION ${DATA_INSTALL_DIR}/icons)
ENDIF( CAN_BUILD_GVBAM )

31
debian/changelog vendored
View File

@ -1,3 +1,34 @@
vbam (0.svn484-1) gutsy; urgency=low
* Added a GTK+ binary
* Updated VBA-M to r484
-- Bastien Bouclet <bgk@users.sourceforge.net> Sun, 20 Apr 2008 13:53:48 +0100
vbam (0.svn472-1) gutsy; urgency=low
* Updated VBA-M to r472
-- Bastien Bouclet <bgk@users.sourceforge.net> Sat, 3 Apr 2008 16:59:12 +0100
vbam (0.svn451-1) unstable; urgency=low
* Updated VBA-M to r451
-- Bastien Bouclet <bgkweb@gmail.com> Sat, 8 Mar 2008 22:51:23 +0100
vbam (0.svn347-1) unstable; urgency=low
* Updated VBA-M to r347
-- Bastien Bouclet <bgkweb@gmail.com> Thu, 1 Feb 2008 07:43:45 +0100
vbam (0.svn338-1) unstable; urgency=low
* Updated VBA-M to r338
-- Bastien Bouclet <bgkweb@gmail.com> Thu, 24 Jan 2008 14:06:21 +0100
vbam (0.svn333-1) unstable; urgency=low vbam (0.svn333-1) unstable; urgency=low
* Added a man page * Added a man page

4
debian/control vendored
View File

@ -1,8 +1,8 @@
Source: vbam Source: vbam
Section: games Section: games
Priority: extra Priority: extra
Maintainer: Bastien Bouclet <bgkweb@gmail.com> Maintainer: Bastien Bouclet <bgk@users.sourceforge.net>
Build-Depends: debhelper (>= 5), zlib1g-dev, libpng12-dev, libsdl1.2-dev, libgl1-mesa-dev Build-Depends: debhelper (>= 5), zlib1g-dev, libpng12-dev, libsdl1.2-dev, libgl1-mesa-dev, libgtkmm-2.4-dev, libglademm-2.4-dev, cmake, portaudio19-dev
Standards-Version: 3.7.2 Standards-Version: 3.7.2
Package: vbam Package: vbam

10
debian/gvbam.desktop vendored Normal file
View File

@ -0,0 +1,10 @@
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=Application
Name=VBA-M
GenericName=GameBoy Advance Emulator
Comment=Nindendo GameBoy Advance Emulator
Exec=gvbam
Icon=vbam-icon.png
Categories=Application;Game;Emulator;GTK

8
debian/rules vendored
View File

@ -25,7 +25,7 @@ build: build-stamp
build-stamp: build-stamp:
dh_testdir dh_testdir
# No ASM optimized version since it is i386 specific cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DDATA_INSTALL_DIR:PATH=share/VisualBoyAdvanceM .
$(MAKE) $(MAKE)
#docbook-to-man debian/vbam.sgml > vbam.1 #docbook-to-man debian/vbam.sgml > vbam.1
@ -35,6 +35,7 @@ clean:
dh_testdir dh_testdir
dh_testroot dh_testroot
rm -f build-stamp rm -f build-stamp
rm -f CMakeCache.txt
# Add here commands to clean up after the build process. # Add here commands to clean up after the build process.
-$(MAKE) clean -$(MAKE) clean
@ -48,8 +49,9 @@ install: build
dh_installdirs dh_installdirs
# Add here commands to install the package into debian/vbam. # Add here commands to install the package into debian/vbam.
$(MAKE) PREFIX=/usr DESTDIR=$(CURDIR)/debian/vbam install $(MAKE) DESTDIR=$(CURDIR)/debian/vbam install
install -c -m 644 -D debian/gvbam.desktop debian/vbam/usr/share/applications/gvbam.desktop
install -c -m 644 -D src/gtk/icons/vba-m.png debian/vbam/usr/share/pixmaps/vbam-icon.png
# Build architecture-independent files here. # Build architecture-independent files here.
binary-indep: build install binary-indep: build install

View File

@ -129,8 +129,6 @@ bool systemSoundInit()
soundbufsize = (soundBufferLen + 1) * 4; soundbufsize = (soundBufferLen + 1) * 4;
fprintf(stderr, "i %d %d\n", soundbufsize, sampleRate);
stereodata16 = new u16[soundbufsize]; stereodata16 = new u16[soundbufsize];
memset(stereodata16, 0, soundbufsize); memset(stereodata16, 0, soundbufsize);
soundpos = 0; soundpos = 0;

File diff suppressed because it is too large Load Diff

View File

@ -1499,17 +1499,17 @@ void Window::vShowSpeed(int _iSpeed)
{ {
char csTitle[50]; char csTitle[50];
/*if (m_eShowSpeed == ShowPercentage) if (m_eShowSpeed == ShowPercentage)
{ {
snprintf(csTitle, 50, "VBA - %d%%", _iSpeed); snprintf(csTitle, 50, "VBA - %d%%", _iSpeed);
set_title(csTitle); set_title(csTitle);
} }
else if (m_eShowSpeed == ShowDetailed) else if (m_eShowSpeed == ShowDetailed)
{*/ {
snprintf(csTitle, 50, "VBA - %d%% (%d, %d fps)", snprintf(csTitle, 50, "VBA - %d%% (%d, %d fps)",
_iSpeed, systemFrameSkip, systemFPS); _iSpeed, systemFrameSkip, systemFPS);
set_title(csTitle); set_title(csTitle);
//} }
} }
void Window::vComputeFrameskip(int _iRate) void Window::vComputeFrameskip(int _iRate)