diff --git a/ChangeLog b/ChangeLog index bc62fe263..b5c9e4960 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,30 @@ +2008-06-03 Tobias Doerffel + + * include/automation_editor.h: + * src/gui/automation_editor.cpp: + fixed broken automation-drawing for floatModels + + * configure.in: + * Makefile.am: + support for building win32-version with OGG/vorbis-support + + * src/gui/main_window.cpp: + added separator in edit-menu + + * src/core/config_mgr.cpp: + fixed paths for win32-build + + * src/core/sample_buffer.cpp: + fixed platform-dependent sampleBuffer::tryToMakeAbsolute(...) + + * lmms.rc.in: + * Makefile.am: + * data/lmms.ico: + added icon and resource-file + + * Makefile.am: + added win32-pkg target + 2008-06-02 Paul Giblock * plugins/sf2_player/sf2_player.cpp: @@ -361,7 +388,7 @@ * src/core/mmp.cpp: add compat-code for time-signature support -2008-05-25 Tobias Doerffel +2008-05-26 Tobias Doerffel * include/controller_view.h: * src/gui/widgets/controller_view.cpp: @@ -895,7 +922,7 @@ * configure.in: Add fluidsynth detection to configure -2008-05-20 Paul Giblock +2008-05-21 Paul Giblock * plugins/vestige/select_file.png: * plugins/vestige/logo.png: diff --git a/Makefile.am b/Makefile.am index 520bd98e5..ca2a1d639 100644 --- a/Makefile.am +++ b/Makefile.am @@ -19,6 +19,33 @@ rpm: $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE).spec rpmbuild -ba $(PACKAGE).spec endif +if BUILD_WIN32 +win32-pkg: all + mkdir -p tmp/lmms/data + mkdir -p tmp/lmms/plugins/ladspa/ + cp lmms.exe tmp/lmms + find plugins/ -name "*.dll" -maxdepth 2 -exec cp '{}' tmp/lmms/plugins/ ';' + cp plugins/ladspa_effect/caps/caps.dll tmp/lmms/plugins/ladspa/ + PWD=`pwd` + cd data && make DESTDIR=$(PWD)/tmp/lmms/ install + mv tmp/lmms/usr/share/lmms/* tmp/lmms/data/ && rm -rf tmp/lmms/usr + cp /opt/mingw/bin/QtCore4.dll tmp/lmms + cp /opt/mingw/bin/QtGui4.dll tmp/lmms + cp /opt/mingw/bin/QtXml4.dll tmp/lmms + cp /opt/mingw/bin/libz.dll tmp/lmms + cp /opt/mingw/bin/libsndfile-1.dll tmp/lmms + cp /opt/mingw/bin/libvorbis*.dll tmp/lmms + cp /opt/mingw/bin/libogg-0.dll tmp/lmms + cp /opt/mingw/bin/libfluidsynth-1.dll tmp/lmms + cp /opt/mingw/bin/SDL.dll tmp/lmms + cp /opt/mingw/i586-mingw32/bin/mingwm10.dll tmp/lmms + cp -L COPYING tmp/lmms/LICENSE.TXT + cp -L README tmp/lmms/README.TXT + /opt/mingw/bin/i586-mingw32-strip tmp/lmms/lmms.exe + mv tmp/lmms tmp/lmms-$(VERSION) + cd tmp && zip -r -9 ../$(PACKAGE)-$(VERSION)-bin-win32.zip lmms-$(VERSION)/* + rm -rf tmp +endif SUBDIRS = buildtools data plugins @@ -493,8 +520,12 @@ LIB_JACK_LDADD = -ljack endif if HAVE_LIBVORBIS +if BUILD_WIN32 +LIB_VORBIS_LDADD = -lvorbis-0 -lvorbisenc-2 -lvorbisfile-3 -logg-0 +else LIB_VORBIS_LDADD = -lvorbis -lvorbisenc -lvorbisfile endif +endif if USE_3RDPARTY_LIBSRC else @@ -513,18 +544,19 @@ if HAVE_LIBPULSE LIB_PA_LDADD = -lpulse endif -lmms_LDADD = $(QT_LDADD) $(LIB_SDL_LDADD) $(LIB_ASOUND_LDADD) $(LIB_JACK_LDADD) $(LIB_SDL_SOUND_LDADD) $(LIB_VORBIS_LDADD) $(LIB_SRC_LDADD) $(LIB_SF_LDADD) $(LIB_PA_LDADD) - if BUILD_LINUX lmms_LDFLAGS = -rdynamic endif if BUILD_WIN32 lmms_LDFLAGS = -Wl,-out-implib=liblmms-imp.a + +lmms_win_resources.o: lmms.rc + $(WINDRES) -o $@ $< +WIN32_RES_LDADD = lmms_win_resources.o endif -single-binary: - $(CXX) $(CXXFLAGS) -DHAVE_CONFIG_H -combine -pipe -O2 -g $(INCLUDES) $(AM_CXXFLAGS) $(lmms_LDADD) $(lmms_LDFLAGS) $(lmms_SOURCES) -o lmms-single +lmms_LDADD = $(QT_LDADD) $(LIB_SDL_LDADD) $(LIB_ASOUND_LDADD) $(LIB_JACK_LDADD) $(LIB_SDL_SOUND_LDADD) $(LIB_VORBIS_LDADD) $(LIB_SRC_LDADD) $(LIB_SF_LDADD) $(LIB_PA_LDADD) $(WIN32_RES_LDADD) #-rpath $(pkglibdir) diff --git a/configure.in b/configure.in index dfaf83e4c..3a4da5a2e 100644 --- a/configure.in +++ b/configure.in @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.50) -AC_INIT(lmms, 0.4.0-svn20080601, lmms-devel/at/lists/dot/sf/dot/net) -AM_INIT_AUTOMAKE(lmms, 0.4.0-svn20080601) +AC_INIT(lmms, 0.4.0-svn20080603, lmms-devel/at/lists/dot/sf/dot/net) +AM_INIT_AUTOMAKE(lmms, 0.4.0-svn20080603) AM_CONFIG_HEADER(config.h) @@ -301,7 +301,7 @@ AC_LANG_POP(C++) # check for vorbis-lib AC_ARG_WITH(vorbis, AS_HELP_STRING([--without-vorbis], - [disable support for exporting song to OGG-files]), , + [disable support for exporting project to OGG-files and loading OGG-samples]), , [ with_vorbis=yes ]) AH_TEMPLATE(HAVE_VORBIS_CODEC_H, [Define to 1 if you have the header file.]) AH_TEMPLATE(HAVE_VORBIS_VORBISENC_H, [Define to 1 if you have the header file.]) @@ -311,7 +311,11 @@ if test "x$with_vorbis" = "xyes" ; then AC_CHECK_HEADER(vorbis/codec.h, HAVE_VORBIS_CODEC_H="true",OGG_SUPPORT="") AC_CHECK_HEADER(vorbis/vorbisenc.h, HAVE_VORBIS_VORBISENC_H="true",OGG_SUPPORT="") AC_CHECK_HEADER(vorbis/vorbisfile.h, HAVE_VORBIS_VORBISFILE_H="true",OGG_SUPPORT="") - AC_CHECK_LIB([vorbis], [vorbis_analysis], HAVE_LIBVORBIS="true", OGG_SUPPORT="") + if [ "$build_win32" = "true" ] ; then + AC_CHECK_LIB([vorbis-0], [vorbis_analysis], HAVE_LIBVORBIS="true", OGG_SUPPORT="") + else + AC_CHECK_LIB([vorbis], [vorbis_analysis], HAVE_LIBVORBIS="true", OGG_SUPPORT="") + fi fi if test ! -z "$OGG_SUPPORT" ; then AC_DEFINE(HAVE_VORBIS_CODEC_H) @@ -634,6 +638,7 @@ LDFLAGS="$LDFLAGS -L/usr/local/lib" CXXFLAGS="$CXXFLAGS -I/usr/local/include" AC_CONFIG_FILES([Makefile + lmms.rc buildtools/Makefile data/Makefile data/locale/Makefile diff --git a/data/lmms.ico b/data/lmms.ico new file mode 100644 index 000000000..1b4c1d370 Binary files /dev/null and b/data/lmms.ico differ diff --git a/lmms.rc.in b/lmms.rc.in new file mode 100644 index 000000000..12264f2af --- /dev/null +++ b/lmms.rc.in @@ -0,0 +1,26 @@ +lmmsicon ICON data/lmms.ico +#include + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 0,4,0,0 + FILEFLAGSMASK VS_FFI_FILEFLAGSMASK + FILEOS VOS_NT_WINDOWS32 + FILETYPE VFT_APP + FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904E4" + //language ID = U.S. English, charset = Windows, Multilingual + BEGIN + VALUE "Comments", "Linux MultiMedia Studio (http://lmms.sf.net)\0" + VALUE "CompanyName", "LMMS Developers\0" + VALUE "FileDescription", "Linux MultiMedia Studio\0" + VALUE "FileVersion", "@PACKAGE_VERSION@\0" + VALUE "LegalCopyright", "Copyright (c) 2004-2008 LMMS Developers\0" + VALUE "OriginalFilename", "lmms.exe\0" + VALUE "ProductName", "LMMS\0" + VALUE "ProductVersion", "@PACKAGE_VERSION@\0" + END + END +END diff --git a/src/core/config_mgr.cpp b/src/core/config_mgr.cpp index 4ca9c583c..37291e7d0 100644 --- a/src/core/config_mgr.cpp +++ b/src/core/config_mgr.cpp @@ -3,7 +3,7 @@ /* * config_mgr.cpp - implementation of class configManager * - * Copyright (c) 2005-2007 Tobias Doerffel + * Copyright (c) 2005-2008 Tobias Doerffel * * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net * @@ -45,17 +45,21 @@ configManager * configManager::s_instanceOfMe = NULL; configManager::configManager( void ) : - m_lmmsRcFile( QDir::home().absolutePath() + "/.lmmsrc.xml" ), - m_workingDir( QDir::home().absolutePath() + "/lmms" ), + m_lmmsRcFile( QDir::home().absolutePath() + QDir::separator() + + ".lmmsrc.xml" ), + m_workingDir( QDir::home().absolutePath() + QDir::separator() + + "lmms" ), m_dataDir( qApp->applicationDirPath() -#ifndef BUILD_WIN32 - .section( '/', 0, -2 ) +#ifdef BUILD_WIN32 + + QDir::separator() + "data" + QDir::separator() +#else + .section( '/', 0, -2 ) + "/share/lmms/" #endif - + "/share/lmms/" ), + ), m_artworkDir( defaultArtworkDir() ), m_pluginDir( qApp->applicationDirPath() #ifdef BUILD_WIN32 - + QDir::separator() + + QDir::separator() + "plugins" + QDir::separator() #else .section( '/', 0, -2 ) + "/lib/lmms/" #endif @@ -301,9 +305,9 @@ bool configManager::loadConfigFile( void ) { m_artworkDir = defaultArtworkDir(); } - if( m_artworkDir.right( 1 ) != "/" ) + if( m_artworkDir.right( 1 ) != QDir::separator() ) { - m_artworkDir += "/"; + m_artworkDir += QDir::separator(); } } m_workingDir = value( "paths", "workingdir" ); @@ -327,7 +331,7 @@ bool configManager::loadConfigFile( void ) if( m_ladDir == "" ) { #ifdef BUILD_WIN32 - m_ladDir = m_pluginDir + "ladspa/"; + m_ladDir = m_pluginDir + "ladspa" + QDir::separator(); #else m_ladDir = "/usr/lib/ladspa/:/usr/local/lib/ladspa/"; #endif