|
|
|
Jan Kolar
|
I had several build problems. Since two of them appeared also to other people, I decided put an info here. On Cygwin, the patches below made it built. (I think I also had to disable nyquist, I mean --disable, not --without). On Linux, installing to rather empty Fedora (my first linux build attempt), I had problem too. (Do not know precisely, I deleted all after second/third problem. First was allegro.h and the second raptor not compiling and then libsndf depending on it when disabled by configure.) Jan ------------------------------------------------- This made Audacity build on cygwin: (In attachment, it is the same splited to individual files). (Unfortunately I do not have time to prepare it for post properly.) This worked with 6a3 and also 10 hours ago. ( Apply p* before c* ) *** audacity/lib-src/FileDialog/win/FileDialogPrivate.cpp Fri Jun 27 05:21:14 2008 --- ../cvs/audacity/lib-src/FileDialog/win/FileDialogPrivate.cpp Sun Jun 29 13:44:07 2008 *************** *** 53,60 **** --- 53,65 ---- #include "../FileDialog.h" #include <shlobj.h> + // added by jan.kolar - needed on Cygwin + #ifndef SFGAO_STREAM + #define SFGAO_STREAM 0x0L + #endif + // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- *** audacity/src/Audacity.h Sun Jun 15 23:45:26 2008 --- ../cvs/audacity/src/Audacity.h Tue Jul 1 00:54:17 2008 *************** *** 98,105 **** --- 98,109 ---- #else #define AUDACITY_DLL_API __attribute__((visibility("default"))) #endif #endif + // Prevent problems with undefined AUDACITY_DLL_API, e.g. on Cygwin. + #ifndef AUDACITY_DLL_API + #define AUDACITY_DLL_API + #endif // For compilers that support precompilation, includes "wx/wx.h". // Mainly for MSVC developers. // *** audacity/acinclude.m4 Wed Jun 25 22:14:43 2008 --- ../cvs/audacity/acinclude.m4 Tue Jul 1 02:03:09 2008 *************** *** 369,378 **** if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" ! dnl export/ExportFFmpeg.o" FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" AC_MSG_NOTICE([FFmpeg headers are available in the local tree]) fi fi --- 369,377 ---- if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o export/ExportFFmpeg.o" FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" AC_MSG_NOTICE([FFmpeg headers are available in the local tree]) fi fi *** audacity/configure Thu Jun 26 17:20:38 2008 --- ../cvs/audacity/configure Tue Jul 1 02:38:05 2008 *************** *** 8055,8065 **** if test "x$avcodec_h_found" = "xyes" ; then if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" { echo "$as_me:$LINENO: FFmpeg headers are available in the local tree" >&5 echo "$as_me: FFmpeg headers are available in the local tree" >&6;} fi fi --- 8055,8067 ---- if test "x$avcodec_h_found" = "xyes" ; then if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! # not enough to complie currently: FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o export/ExportFFmpeg.o" ! FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" { echo "$as_me:$LINENO: FFmpeg headers are available in the local tree" >&5 echo "$as_me: FFmpeg headers are available in the local tree" >&6;} fi fi *** audacity/src/Project.cpp Fri Jun 27 01:44:58 2008 --- ../cvs/audacity/src/Project.cpp Tue Jul 1 10:26:35 2008 *************** *** 486,496 **** VSBarID, TrackPanelID }; ! //also in ODManager.cpp DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) BEGIN_EVENT_TABLE(AudacityProject, wxFrame) EVT_MENU_OPEN(AudacityProject::OnMenuEvent) EVT_MENU_CLOSE(AudacityProject::OnMenuEvent) --- 486,499 ---- VSBarID, TrackPanelID }; ! // also in ODManager.cpp resp. ODTask.cpp ! // (should be rather in a header file) ! BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) + END_DECLARE_EVENT_TYPES() BEGIN_EVENT_TABLE(AudacityProject, wxFrame) EVT_MENU_OPEN(AudacityProject::OnMenuEvent) EVT_MENU_CLOSE(AudacityProject::OnMenuEvent) *** audacity/src/ondemand/ODManager.cpp Fri Jun 27 01:44:59 2008 --- ../cvs/audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:35:25 2008 *************** *** 22,30 **** --- 22,33 ---- bool sHasLoadedOD=false; + BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) + END_DECLARE_EVENT_TYPES() + DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) //private constructor - Singleton. ODManager::ODManager() *************** *** 330,334 **** bool ODManager::HasLoadedODFlag() { return sHasLoadedOD; } ! \ No newline at end of file --- 333,342 ---- bool ODManager::HasLoadedODFlag() { return sHasLoadedOD; } ! ! ! ! ! ! *** audacity/src/ondemand/ODTask.cpp Sun Jun 22 21:25:30 2008 --- ../cvs/audacity/src/ondemand/ODTask.cpp Tue Jul 1 10:38:17 2008 *************** *** 23,31 **** --- 23,34 ---- #include <wx/wx.h> #include "../Project.h" + BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) + END_DECLARE_EVENT_TYPES() + DEFINE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE) /// Constructs an ODTask ODTask::ODTask() *************** *** 136,140 **** ///return bool ODTask::IsComplete() { return PercentComplete() >= 1.0; ! } \ No newline at end of file --- 139,147 ---- ///return bool ODTask::IsComplete() { return PercentComplete() >= 1.0; ! } ! ! ! ! *** audacity/lib-src/allegro/Makefile Tue Jul 1 03:55:44 2008 --- audacity/lib-src/allegro/Makefile.new Tue Jul 1 17:59:06 2008 *************** *** 11,14 **** --- 11,15 ---- allegro.cpp.o \ allegrord.cpp.o \ + allegrosmfrd.cpp.o \ allegrowr.cpp.o \ mfallegro.cpp.o \ *** audacity/lib-src/allegro/Makefile.in Wed Jan 23 06:03:10 2008 --- audacity/lib-src/allegro/Makefile.in.new Tue Jul 1 17:58:19 2008 *************** *** 11,14 **** --- 11,15 ---- allegro.cpp.o \ allegrord.cpp.o \ + allegrosmfrd.cpp.o \ allegrowr.cpp.o \ mfallegro.cpp.o \ *** audacity/src/FreqWindow.cpp Sat Jun 28 23:10:52 2008 --- ../cvs/audacity/src/FreqWindow.cpp Tue Jul 1 01:02:00 2008 *************** *** 388,395 **** --- 388,397 ---- memDC.SetPen(*wxBLACK_PEN); memDC.SetBrush(*wxWHITE_BRUSH); memDC.DrawRectangle(r); + // Hack for Cygwin, where it happens to be #defined to DrawTextA + #undef DrawText if (!mProcessed) { if (mData && mDataLen < mWindowSize) memDC.DrawText(_("Not enough data selected."), r.x + 5, r.y + 5); *** audacity/src/export/Export.cpp Sun Jun 29 08:14:11 2008 --- ../cvs/audacity/src/export/Export.cpp Tue Jul 1 01:50:25 2008 *************** *** 885,893 **** --- 885,905 ---- memDC.SetPen( mSelectedTrack == i ? *wxRED_PEN : *wxBLACK_PEN ); memDC.DrawRectangle( mTrackRects[ i ] ); memDC.GetTextExtent( mTrackNames[ i ], &w, &h ); + + + // ---------------------------------------------------------------- + // There is a problem with DrawText versus DrawTextA on cygwin. + // Contrary to FreqWindow.cpp:392nn, it is reversed for this file! + // Here I 'need' DrawTextA to make it compile. + + + #ifdef __CYGWIN__ + memDC.DrawTextA( mTrackNames[ i ], + #else memDC.DrawText( mTrackNames[ i ], + #endif mTrackRects[ i ].x + ( mBoxWidth - w ) / 2, mTrackRects[ i ].y + ( mTrackHeight - h ) / 2 ); } *************** *** 912,920 **** --- 924,936 ---- memDC.SetPen( mSelectedChannel == i ? *wxRED_PEN : *wxBLACK_PEN ); memDC.DrawRectangle( mChannelRects[ i ] ); + #ifdef __CYGWIN__ + memDC.DrawTextA( wxString::Format( _( "Channel: %2d" ), i + 1 ), + #else memDC.DrawText( wxString::Format( _( "Channel: %2d" ), i + 1 ), + #endif mChannelRects[ i ].x + ( mBoxWidth - w ) / 2, mChannelRects[ i ].y + ( mChannelHeight - h ) / 2 ); } *** audacity/src/Menus.cpp Sun Jun 29 23:00:07 2008 --- ../cvs/audacity/src/Menus.cpp Tue Jul 1 01:08:27 2008 *************** *** 29,36 **** --- 29,40 ---- simplifies construction of menu items. *//*******************************************************************/ + // hack for Cygwin: + // defining either __USE_W32_SOCKETS or _WINSOCK_H avoids size_t/int clash with gethostname. + #define __USE_W32_SOCKETS + #include "Audacity.h" #include <iterator> #include <math.h> *** audacity/src/UploadDialog.cpp Sun Jun 1 08:57:29 2008 --- ../cvs/audacity/src/UploadDialog.cpp Tue Jul 1 01:39:22 2008 *************** *** 14,23 **** --- 14,33 ---- \class UploadDialog \brief A contributed class for uploading audio via FTP. *//*******************************************************************/ + // hack for Cygwin: + // defining either __USE_W32_SOCKETS or _WINSOCK_H avoids size_t/int clash + // with gethostname in unistd.h included from Menu.cpp and WaveTrack.h + // (Better place do define this might be UploadDialog.h, included from both ? Or more risky?) + // (Or, is simply some include missing here?) + #ifdef __CYGWIN__ + #define __USE_W32_SOCKETS + #endif + + #include "Audacity.h" #include <fstream> #include <math.h> #include <wx/dialog.h> *** audacity/src/Theme.cpp Fri May 23 07:54:00 2008 --- ../cvs/audacity/src/Theme.cpp Tue Jul 1 01:17:02 2008 *************** *** 929,937 **** /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #ifdef __WXMSW__ wxMkDir( FileNames::ThemeComponentsDir().fn_str() ); #else wxMkDir( FileNames::ThemeComponentsDir().fn_str(), 0700 ); #endif --- 929,937 ---- /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #if defined(__WXMSW__) && !defined(__CYGWIN__) wxMkDir( FileNames::ThemeComponentsDir().fn_str() ); #else wxMkDir( FileNames::ThemeComponentsDir().fn_str(), 0700 ); #endif *** audacity/src/effects/NoiseRemoval.cpp Tue Jun 3 09:16:41 2008 --- ../cvs/audacity/src/effects/NoiseRemoval.cpp Tue Jul 1 04:00:20 2008 *************** *** 160,168 **** /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #ifdef __WXMSW__ wxMkDir( FileNames::NRPDir().fn_str() ); #else wxMkDir( FileNames::NRPDir().fn_str(), 0700 ); #endif --- 160,168 ---- /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #if defined(__WXMSW__) && !defined(__CYGWIN__) wxMkDir( FileNames::NRPDir().fn_str() ); #else wxMkDir( FileNames::NRPDir().fn_str(), 0700 ); #endif *** audacity/src/WaveTrack.cpp Thu Jun 26 17:00:48 2008 --- ../cvs/audacity/src/WaveTrack.cpp Tue Jul 1 01:31:26 2008 *************** *** 1931,1939 **** --- 1931,1944 ---- { delete newClip; return false; } + // on Cygwin there is no llrint. (Though, Mingw knows llrint !) + #ifdef __CYGWIN__ + longSampleCount here = floor(((t - c->GetStartTime() - mOffset) * mRate) + 0.5); + #else longSampleCount here = llrint(floor(((t - c->GetStartTime() - mOffset) * mRate) + 0.5)); + #endif newClip->Offset((double)here/(double)mRate); mClips.Append(newClip); return true; } *** audacity/src/ondemand/ODTaskThread.h Mon Jun 16 00:24:05 2008 --- ../cvs/audacity/src/ondemand/ODTaskThread.h Tue Jul 1 01:58:26 2008 *************** *** 20,28 **** --- 20,32 ---- #ifndef __AUDACITY_ODTASKTHREAD__ #define __AUDACITY_ODTASKTHREAD__ + + //vector not needed and does not compile on Cygwin + #ifndef __CYGWIN__ #include <vector> + #endif #include <wx/thread.h> class ODTask; *** audacity/src/effects/EffectCategory.h Mon Jun 23 18:18:13 2008 --- ../cvs/audacity/src/effects/EffectCategory.h Mon Jun 30 13:17:19 2008 *************** *** 21,29 **** #ifndef __AUDACITY_EFFECTCATEGORY__ #define __AUDACITY_EFFECTCATEGORY__ #include <set> ! #include <vector> #include <wx/string.h> #include "Effect.h" --- 21,29 ---- #ifndef __AUDACITY_EFFECTCATEGORY__ #define __AUDACITY_EFFECTCATEGORY__ #include <set> ! //#include <vector> #include <wx/string.h> #include "Effect.h" *** audacity/src/Makefile Tue Jul 1 11:45:33 2008 --- audacity/src/Makefile.vimbak Tue Jul 1 04:22:16 2008 *************** *** 20,26 **** LOCAL_LIBS = allegro.a FileDialog.a libvorbisenc.a libvorbisfile.a libvorbis.a libogg.a libmad.a libsndfile.a libFLAC++.a libFLAC.a libid3tag.a libresample.a libSoundTouch.a libvamp-hostsdk.a libtwolame.a liblrdf.a libraptor.a portaudio-v19/lib/libportaudio.a portmixer/libportmixer.a EXTRAOBJS = ../lib-src/portaudio-v19/lib/libportaudio.a ../lib-src/portmixer/libportmixer.a EXTRATARGETS = ! LIBS = -L/usr/local/lib -lwx_msw_richtext-2.8 -lwx_msw_aui-2.8 -lwx_msw_xrc-2.8 -lwx_msw_qa-2.8 -lwx_msw_html-2.8 -lwx_msw_adv-2.8 -lwx_msw_core-2.8 -lwx_base_xml-2.8 -lwx_base_net-2.8 -lwx_base-2.8 -lexpat -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwsock32 -lwinmm -lwinmm -lm -lz DIRS=blockfile commands effects effects/ladspa effects/nyquist effects/vamp export import prefs toolbars widgets xml srcdir=. --- 20,26 ---- LOCAL_LIBS = allegro.a FileDialog.a libvorbisenc.a libvorbisfile.a libvorbis.a libogg.a libmad.a libsndfile.a libFLAC++.a libFLAC.a libid3tag.a libresample.a libSoundTouch.a libvamp-hostsdk.a libtwolame.a liblrdf.a libraptor.a portaudio-v19/lib/libportaudio.a portmixer/libportmixer.a EXTRAOBJS = ../lib-src/portaudio-v19/lib/libportaudio.a ../lib-src/portmixer/libportmixer.a EXTRATARGETS = ! LIBS = -L/usr/local/lib -lwx_msw_richtext-2.8 -lwx_msw_aui-2.8 -lwx_msw_xrc-2.8 -lwx_msw_qa-2.8 -lwx_msw_html-2.8 -lwx_msw_adv-2.8 -lwx_msw_core-2.8 -lwx_base_xml-2.8 -lwx_base_net-2.8 -lwx_base-2.8 -lexpat -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwsock32 -lwinmm -lwinmm -lm DIRS=blockfile commands effects effects/ladspa effects/nyquist effects/vamp export import prefs toolbars widgets xml srcdir=. *** audacity/configure.in Thu Jun 26 17:20:39 2008 --- ../cvs/audacity/configure.in Mon Jun 30 18:08:12 2008 *************** *** 541,548 **** --- 541,549 ---- LIBS="-framework AudioUnit -framework AudioToolbox $LIBS" LIBS="-framework CoreAudio $LIBS -lz" ;; cygwin*) + LIBS="$LIBS -lz" ;; *) dnl Unix AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no) *************** *** 577,584 **** --- 578,586 ---- ;; cygwin*) LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_win_wmme/portaudio.a" EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_win_wmme/portaudio.a" + # needed also?? LIBS="$LIBS -lz" ;; *) dnl Unix LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_unix_oss/portaudio.a" *** audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:44:04 2008 --- ../cvs/audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:49:52 2008 *************** *** 20,35 **** bool gManagerCreated=false; /// a flag that is set if we have loaded some OD blockfiles from PCM. bool sHasLoadedOD=false; ! BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) END_DECLARE_EVENT_TYPES() DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) //private constructor - Singleton. ODManager::ODManager() { mTerminate = false; --- 20,36 ---- bool gManagerCreated=false; /// a flag that is set if we have loaded some OD blockfiles from PCM. bool sHasLoadedOD=false; ! #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) END_DECLARE_EVENT_TYPES() DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) + #endif //private constructor - Singleton. ODManager::ODManager() { mTerminate = false; *************** *** 199,218 **** --- 200,221 ---- mQueuesMutex.Lock(); mNeedsDraw += mQueues.size()>0?1:0; mQueuesMutex.Unlock(); // // //TODO:this is a little excessive, in the future only redraw some, and if possible only the Tracks on the trackpanel.. + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) if(mNeedsDraw > 18) { mNeedsDraw=0; wxCommandEvent event( wxEVT_ODTASK_UPDATE ); AudacityProject::AllProjectsDeleteLock(); AudacityProject* proj = GetActiveProject(); if(proj) proj->AddPendingEvent( event ); AudacityProject::AllProjectsDeleteUnlock(); } + #endif } mTerminateMutex.Unlock(); //wxLogDebug Not thread safe. *** audacity/src/Project.cpp Tue Jul 1 10:44:03 2008 --- ../cvs/audacity/src/Project.cpp Tue Jul 1 11:01:51 2008 *************** *** 490,497 **** --- 490,499 ---- // also in ODManager.cpp resp. ODTask.cpp // (should be rather in a header file) + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) END_DECLARE_EVENT_TYPES() + #endif BEGIN_EVENT_TABLE(AudacityProject, wxFrame) *************** *** 515,520 **** --- 517,524 ---- EVT_COMMAND(wxID_ANY, EVT_CAPTURE_KEYBOARD, AudacityProject::OnCaptureKeyboard) EVT_COMMAND(wxID_ANY, EVT_RELEASE_KEYBOARD, AudacityProject::OnReleaseKeyboard) + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) EVT_COMMAND (wxID_ANY, wxEVT_ODTASK_UPDATE, AudacityProject::OnODTaskUpdate) EVT_COMMAND (wxID_ANY, wxEVT_ODTASK_COMPLETE, AudacityProject::OnODTaskComplete) + #endif END_EVENT_TABLE() *** audacity/src/effects/EffectCategory.h Mon Jun 23 18:18:13 2008 --- ../cvs/audacity/src/effects/EffectCategory.h Mon Jun 30 13:17:19 2008 *************** *** 21,29 **** #ifndef __AUDACITY_EFFECTCATEGORY__ #define __AUDACITY_EFFECTCATEGORY__ #include <set> ! #include <vector> #include <wx/string.h> #include "Effect.h" --- 21,29 ---- #ifndef __AUDACITY_EFFECTCATEGORY__ #define __AUDACITY_EFFECTCATEGORY__ #include <set> ! //#include <vector> #include <wx/string.h> #include "Effect.h" *** audacity/configure.in Thu Jun 26 17:20:39 2008 --- ../cvs/audacity/configure.in Mon Jun 30 18:08:12 2008 *************** *** 541,548 **** --- 541,549 ---- LIBS="-framework AudioUnit -framework AudioToolbox $LIBS" LIBS="-framework CoreAudio $LIBS -lz" ;; cygwin*) + LIBS="$LIBS -lz" ;; *) dnl Unix AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no) *************** *** 577,584 **** --- 578,586 ---- ;; cygwin*) LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_win_wmme/portaudio.a" EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_win_wmme/portaudio.a" + # needed also?? LIBS="$LIBS -lz" ;; *) dnl Unix LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_unix_oss/portaudio.a" *** audacity/src/Makefile Tue Jul 1 11:45:33 2008 --- audacity/src/Makefile.vimbak Tue Jul 1 04:22:16 2008 *************** *** 20,26 **** LOCAL_LIBS = allegro.a FileDialog.a libvorbisenc.a libvorbisfile.a libvorbis.a libogg.a libmad.a libsndfile.a libFLAC++.a libFLAC.a libid3tag.a libresample.a libSoundTouch.a libvamp-hostsdk.a libtwolame.a liblrdf.a libraptor.a portaudio-v19/lib/libportaudio.a portmixer/libportmixer.a EXTRAOBJS = ../lib-src/portaudio-v19/lib/libportaudio.a ../lib-src/portmixer/libportmixer.a EXTRATARGETS = ! LIBS = -L/usr/local/lib -lwx_msw_richtext-2.8 -lwx_msw_aui-2.8 -lwx_msw_xrc-2.8 -lwx_msw_qa-2.8 -lwx_msw_html-2.8 -lwx_msw_adv-2.8 -lwx_msw_core-2.8 -lwx_base_xml-2.8 -lwx_base_net-2.8 -lwx_base-2.8 -lexpat -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwsock32 -lwinmm -lwinmm -lm -lz DIRS=blockfile commands effects effects/ladspa effects/nyquist effects/vamp export import prefs toolbars widgets xml srcdir=. --- 20,26 ---- LOCAL_LIBS = allegro.a FileDialog.a libvorbisenc.a libvorbisfile.a libvorbis.a libogg.a libmad.a libsndfile.a libFLAC++.a libFLAC.a libid3tag.a libresample.a libSoundTouch.a libvamp-hostsdk.a libtwolame.a liblrdf.a libraptor.a portaudio-v19/lib/libportaudio.a portmixer/libportmixer.a EXTRAOBJS = ../lib-src/portaudio-v19/lib/libportaudio.a ../lib-src/portmixer/libportmixer.a EXTRATARGETS = ! LIBS = -L/usr/local/lib -lwx_msw_richtext-2.8 -lwx_msw_aui-2.8 -lwx_msw_xrc-2.8 -lwx_msw_qa-2.8 -lwx_msw_html-2.8 -lwx_msw_adv-2.8 -lwx_msw_core-2.8 -lwx_base_xml-2.8 -lwx_base_net-2.8 -lwx_base-2.8 -lexpat -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwsock32 -lwinmm -lwinmm -lm DIRS=blockfile commands effects effects/ladspa effects/nyquist effects/vamp export import prefs toolbars widgets xml srcdir=. *** audacity/src/Project.cpp Tue Jul 1 10:44:03 2008 --- ../cvs/audacity/src/Project.cpp Tue Jul 1 11:01:51 2008 *************** *** 490,497 **** --- 490,499 ---- // also in ODManager.cpp resp. ODTask.cpp // (should be rather in a header file) + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) END_DECLARE_EVENT_TYPES() + #endif BEGIN_EVENT_TABLE(AudacityProject, wxFrame) *************** *** 515,520 **** --- 517,524 ---- EVT_COMMAND(wxID_ANY, EVT_CAPTURE_KEYBOARD, AudacityProject::OnCaptureKeyboard) EVT_COMMAND(wxID_ANY, EVT_RELEASE_KEYBOARD, AudacityProject::OnReleaseKeyboard) + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) EVT_COMMAND (wxID_ANY, wxEVT_ODTASK_UPDATE, AudacityProject::OnODTaskUpdate) EVT_COMMAND (wxID_ANY, wxEVT_ODTASK_COMPLETE, AudacityProject::OnODTaskComplete) + #endif END_EVENT_TABLE() *** audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:44:04 2008 --- ../cvs/audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:49:52 2008 *************** *** 20,35 **** bool gManagerCreated=false; /// a flag that is set if we have loaded some OD blockfiles from PCM. bool sHasLoadedOD=false; ! BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) END_DECLARE_EVENT_TYPES() DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) //private constructor - Singleton. ODManager::ODManager() { mTerminate = false; --- 20,36 ---- bool gManagerCreated=false; /// a flag that is set if we have loaded some OD blockfiles from PCM. bool sHasLoadedOD=false; ! #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) END_DECLARE_EVENT_TYPES() DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) + #endif //private constructor - Singleton. ODManager::ODManager() { mTerminate = false; *************** *** 199,218 **** --- 200,221 ---- mQueuesMutex.Lock(); mNeedsDraw += mQueues.size()>0?1:0; mQueuesMutex.Unlock(); // // //TODO:this is a little excessive, in the future only redraw some, and if possible only the Tracks on the trackpanel.. + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) if(mNeedsDraw > 18) { mNeedsDraw=0; wxCommandEvent event( wxEVT_ODTASK_UPDATE ); AudacityProject::AllProjectsDeleteLock(); AudacityProject* proj = GetActiveProject(); if(proj) proj->AddPendingEvent( event ); AudacityProject::AllProjectsDeleteUnlock(); } + #endif } mTerminateMutex.Unlock(); //wxLogDebug Not thread safe. *** audacity/lib-src/FileDialog/win/FileDialogPrivate.cpp Fri Jun 27 05:21:14 2008 --- ../cvs/audacity/lib-src/FileDialog/win/FileDialogPrivate.cpp Sun Jun 29 13:44:07 2008 *************** *** 53,60 **** --- 53,65 ---- #include "../FileDialog.h" #include <shlobj.h> + // added by jan.kolar - needed on Cygwin + #ifndef SFGAO_STREAM + #define SFGAO_STREAM 0x0L + #endif + // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- *** audacity/src/Audacity.h Sun Jun 15 23:45:26 2008 --- ../cvs/audacity/src/Audacity.h Tue Jul 1 00:54:17 2008 *************** *** 98,105 **** --- 98,109 ---- #else #define AUDACITY_DLL_API __attribute__((visibility("default"))) #endif #endif + // Prevent problems with undefined AUDACITY_DLL_API, e.g. on Cygwin. + #ifndef AUDACITY_DLL_API + #define AUDACITY_DLL_API + #endif // For compilers that support precompilation, includes "wx/wx.h". // Mainly for MSVC developers. // *** audacity/acinclude.m4 Wed Jun 25 22:14:43 2008 --- ../cvs/audacity/acinclude.m4 Tue Jul 1 02:03:09 2008 *************** *** 369,378 **** if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" ! dnl export/ExportFFmpeg.o" FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" AC_MSG_NOTICE([FFmpeg headers are available in the local tree]) fi fi --- 369,377 ---- if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o export/ExportFFmpeg.o" FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" AC_MSG_NOTICE([FFmpeg headers are available in the local tree]) fi fi *** audacity/configure Thu Jun 26 17:20:38 2008 --- ../cvs/audacity/configure Tue Jul 1 02:38:05 2008 *************** *** 8055,8065 **** if test "x$avcodec_h_found" = "xyes" ; then if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" { echo "$as_me:$LINENO: FFmpeg headers are available in the local tree" >&5 echo "$as_me: FFmpeg headers are available in the local tree" >&6;} fi fi --- 8055,8067 ---- if test "x$avcodec_h_found" = "xyes" ; then if test "x$avformat_h_found" = "xyes" ; then FFMPEG_LOCAL_AVAILABLE="yes" FFMPEG_LOCAL_LIBS="" FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' ! # not enough to complie currently: FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o export/ExportFFmpeg.o" ! FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" { echo "$as_me:$LINENO: FFmpeg headers are available in the local tree" >&5 echo "$as_me: FFmpeg headers are available in the local tree" >&6;} fi fi *** audacity/src/Project.cpp Fri Jun 27 01:44:58 2008 --- ../cvs/audacity/src/Project.cpp Tue Jul 1 10:26:35 2008 *************** *** 486,496 **** VSBarID, TrackPanelID }; ! //also in ODManager.cpp DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) BEGIN_EVENT_TABLE(AudacityProject, wxFrame) EVT_MENU_OPEN(AudacityProject::OnMenuEvent) EVT_MENU_CLOSE(AudacityProject::OnMenuEvent) --- 486,499 ---- VSBarID, TrackPanelID }; ! // also in ODManager.cpp resp. ODTask.cpp ! // (should be rather in a header file) ! BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) + END_DECLARE_EVENT_TYPES() BEGIN_EVENT_TABLE(AudacityProject, wxFrame) EVT_MENU_OPEN(AudacityProject::OnMenuEvent) EVT_MENU_CLOSE(AudacityProject::OnMenuEvent) *** audacity/src/ondemand/ODManager.cpp Fri Jun 27 01:44:59 2008 --- ../cvs/audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:35:25 2008 *************** *** 22,30 **** --- 22,33 ---- bool sHasLoadedOD=false; + BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) + END_DECLARE_EVENT_TYPES() + DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) //private constructor - Singleton. ODManager::ODManager() *************** *** 330,334 **** bool ODManager::HasLoadedODFlag() { return sHasLoadedOD; } ! \ No newline at end of file --- 333,342 ---- bool ODManager::HasLoadedODFlag() { return sHasLoadedOD; } ! ! ! ! ! ! *** audacity/src/ondemand/ODTask.cpp Sun Jun 22 21:25:30 2008 --- ../cvs/audacity/src/ondemand/ODTask.cpp Tue Jul 1 10:38:17 2008 *************** *** 23,31 **** --- 23,34 ---- #include <wx/wx.h> #include "../Project.h" + BEGIN_DECLARE_EVENT_TYPES() DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) + END_DECLARE_EVENT_TYPES() + DEFINE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE) /// Constructs an ODTask ODTask::ODTask() *************** *** 136,140 **** ///return bool ODTask::IsComplete() { return PercentComplete() >= 1.0; ! } \ No newline at end of file --- 139,147 ---- ///return bool ODTask::IsComplete() { return PercentComplete() >= 1.0; ! } ! ! ! ! *** audacity/lib-src/allegro/Makefile Tue Jul 1 03:55:44 2008 --- audacity/lib-src/allegro/Makefile.new Tue Jul 1 17:59:06 2008 *************** *** 11,14 **** --- 11,15 ---- allegro.cpp.o \ allegrord.cpp.o \ + allegrosmfrd.cpp.o \ allegrowr.cpp.o \ mfallegro.cpp.o \ *** audacity/lib-src/allegro/Makefile.in Wed Jan 23 06:03:10 2008 --- audacity/lib-src/allegro/Makefile.in.new Tue Jul 1 17:58:19 2008 *************** *** 11,14 **** --- 11,15 ---- allegro.cpp.o \ allegrord.cpp.o \ + allegrosmfrd.cpp.o \ allegrowr.cpp.o \ mfallegro.cpp.o \ *** audacity/src/FreqWindow.cpp Sat Jun 28 23:10:52 2008 --- ../cvs/audacity/src/FreqWindow.cpp Tue Jul 1 01:02:00 2008 *************** *** 388,395 **** --- 388,397 ---- memDC.SetPen(*wxBLACK_PEN); memDC.SetBrush(*wxWHITE_BRUSH); memDC.DrawRectangle(r); + // Hack for Cygwin, where it happens to be #defined to DrawTextA + #undef DrawText if (!mProcessed) { if (mData && mDataLen < mWindowSize) memDC.DrawText(_("Not enough data selected."), r.x + 5, r.y + 5); *** audacity/src/export/Export.cpp Sun Jun 29 08:14:11 2008 --- ../cvs/audacity/src/export/Export.cpp Tue Jul 1 01:50:25 2008 *************** *** 885,893 **** --- 885,905 ---- memDC.SetPen( mSelectedTrack == i ? *wxRED_PEN : *wxBLACK_PEN ); memDC.DrawRectangle( mTrackRects[ i ] ); memDC.GetTextExtent( mTrackNames[ i ], &w, &h ); + + + // ---------------------------------------------------------------- + // There is a problem with DrawText versus DrawTextA on cygwin. + // Contrary to FreqWindow.cpp:392nn, it is reversed for this file! + // Here I 'need' DrawTextA to make it compile. + + + #ifdef __CYGWIN__ + memDC.DrawTextA( mTrackNames[ i ], + #else memDC.DrawText( mTrackNames[ i ], + #endif mTrackRects[ i ].x + ( mBoxWidth - w ) / 2, mTrackRects[ i ].y + ( mTrackHeight - h ) / 2 ); } *************** *** 912,920 **** --- 924,936 ---- memDC.SetPen( mSelectedChannel == i ? *wxRED_PEN : *wxBLACK_PEN ); memDC.DrawRectangle( mChannelRects[ i ] ); + #ifdef __CYGWIN__ + memDC.DrawTextA( wxString::Format( _( "Channel: %2d" ), i + 1 ), + #else memDC.DrawText( wxString::Format( _( "Channel: %2d" ), i + 1 ), + #endif mChannelRects[ i ].x + ( mBoxWidth - w ) / 2, mChannelRects[ i ].y + ( mChannelHeight - h ) / 2 ); } *** audacity/src/Menus.cpp Sun Jun 29 23:00:07 2008 --- ../cvs/audacity/src/Menus.cpp Tue Jul 1 01:08:27 2008 *************** *** 29,36 **** --- 29,40 ---- simplifies construction of menu items. *//*******************************************************************/ + // hack for Cygwin: + // defining either __USE_W32_SOCKETS or _WINSOCK_H avoids size_t/int clash with gethostname. + #define __USE_W32_SOCKETS + #include "Audacity.h" #include <iterator> #include <math.h> *** audacity/src/UploadDialog.cpp Sun Jun 1 08:57:29 2008 --- ../cvs/audacity/src/UploadDialog.cpp Tue Jul 1 01:39:22 2008 *************** *** 14,23 **** --- 14,33 ---- \class UploadDialog \brief A contributed class for uploading audio via FTP. *//*******************************************************************/ + // hack for Cygwin: + // defining either __USE_W32_SOCKETS or _WINSOCK_H avoids size_t/int clash + // with gethostname in unistd.h included from Menu.cpp and WaveTrack.h + // (Better place do define this might be UploadDialog.h, included from both ? Or more risky?) + // (Or, is simply some include missing here?) + #ifdef __CYGWIN__ + #define __USE_W32_SOCKETS + #endif + + #include "Audacity.h" #include <fstream> #include <math.h> #include <wx/dialog.h> *** audacity/src/Theme.cpp Fri May 23 07:54:00 2008 --- ../cvs/audacity/src/Theme.cpp Tue Jul 1 01:17:02 2008 *************** *** 929,937 **** /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #ifdef __WXMSW__ wxMkDir( FileNames::ThemeComponentsDir().fn_str() ); #else wxMkDir( FileNames::ThemeComponentsDir().fn_str(), 0700 ); #endif --- 929,937 ---- /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #if defined(__WXMSW__) && !defined(__CYGWIN__) wxMkDir( FileNames::ThemeComponentsDir().fn_str() ); #else wxMkDir( FileNames::ThemeComponentsDir().fn_str(), 0700 ); #endif *** audacity/src/effects/NoiseRemoval.cpp Tue Jun 3 09:16:41 2008 --- ../cvs/audacity/src/effects/NoiseRemoval.cpp Tue Jul 1 04:00:20 2008 *************** *** 160,168 **** /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #ifdef __WXMSW__ wxMkDir( FileNames::NRPDir().fn_str() ); #else wxMkDir( FileNames::NRPDir().fn_str(), 0700 ); #endif --- 160,168 ---- /// directory didn't exist, even if it successfully creates it. /// so we create and then test if it exists instead. /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument /// under MSW ! #if defined(__WXMSW__) && !defined(__CYGWIN__) wxMkDir( FileNames::NRPDir().fn_str() ); #else wxMkDir( FileNames::NRPDir().fn_str(), 0700 ); #endif *** audacity/src/WaveTrack.cpp Thu Jun 26 17:00:48 2008 --- ../cvs/audacity/src/WaveTrack.cpp Tue Jul 1 01:31:26 2008 *************** *** 1931,1939 **** --- 1931,1944 ---- { delete newClip; return false; } + // on Cygwin there is no llrint. (Though, Mingw knows llrint !) + #ifdef __CYGWIN__ + longSampleCount here = floor(((t - c->GetStartTime() - mOffset) * mRate) + 0.5); + #else longSampleCount here = llrint(floor(((t - c->GetStartTime() - mOffset) * mRate) + 0.5)); + #endif newClip->Offset((double)here/(double)mRate); mClips.Append(newClip); return true; } *** audacity/src/ondemand/ODTaskThread.h Mon Jun 16 00:24:05 2008 --- ../cvs/audacity/src/ondemand/ODTaskThread.h Tue Jul 1 01:58:26 2008 *************** *** 20,28 **** --- 20,32 ---- #ifndef __AUDACITY_ODTASKTHREAD__ #define __AUDACITY_ODTASKTHREAD__ + + //vector not needed and does not compile on Cygwin + #ifndef __CYGWIN__ #include <vector> + #endif #include <wx/thread.h> class ODTask; ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ Audacity-devel mailing list Audacity-devel@... https://lists.sourceforge.net/lists/listinfo/audacity-devel |
|||||||||||||||
|
Martyn Shaw-2
|
So you got it built and running on Cygwin? That must be the first one
in a long time! A lot of these problems look like the sort of thing we'd get if one platform wasn't used for ages. Are we going to try and support Cygwin? If so, it would need a regular developer who used it, I guess. Interesting. Martyn Jan Kolar wrote: > > I had several build problems. > Since two of them appeared also to other people, I decided put an info > here. > > On Cygwin, the patches below made it built. > (I think I also had to disable nyquist, I mean --disable, not --without). > > On Linux, installing to rather empty Fedora (my first linux build > attempt), I had problem too. > (Do not know precisely, I deleted all after second/third problem. > First was allegro.h and the second raptor not compiling and then libsndf > depending on it when disabled by configure.) > > Jan > > ------------------------------------------------- > This made Audacity build on cygwin: > (In attachment, it is the same splited to individual files). > (Unfortunately I do not have time to prepare it for post properly.) > This worked with 6a3 and also 10 hours ago. > ( Apply p* before c* ) > > > *** audacity/lib-src/FileDialog/win/FileDialogPrivate.cpp Fri Jun 27 > 05:21:14 2008 > --- ../cvs/audacity/lib-src/FileDialog/win/FileDialogPrivate.cpp Sun > Jun 29 13:44:07 2008 > *************** > *** 53,60 **** > --- 53,65 ---- > #include "../FileDialog.h" > > #include <shlobj.h> > > + // added by jan.kolar - needed on Cygwin > + #ifndef SFGAO_STREAM > + #define SFGAO_STREAM 0x0L > + #endif > + > // > ---------------------------------------------------------------------------- > > // constants > // > ---------------------------------------------------------------------------- > > > *** audacity/src/Audacity.h Sun Jun 15 23:45:26 2008 > --- ../cvs/audacity/src/Audacity.h Tue Jul 1 00:54:17 2008 > *************** > *** 98,105 **** > --- 98,109 ---- > #else > #define AUDACITY_DLL_API __attribute__((visibility("default"))) > #endif > #endif > + // Prevent problems with undefined AUDACITY_DLL_API, e.g. on Cygwin. > + #ifndef AUDACITY_DLL_API > + #define AUDACITY_DLL_API > + #endif > > // For compilers that support precompilation, includes "wx/wx.h". > // Mainly for MSVC developers. > // > *** audacity/acinclude.m4 Wed Jun 25 22:14:43 2008 > --- ../cvs/audacity/acinclude.m4 Tue Jul 1 02:03:09 2008 > *************** > *** 369,378 **** > if test "x$avformat_h_found" = "xyes" ; then > FFMPEG_LOCAL_AVAILABLE="yes" > FFMPEG_LOCAL_LIBS="" > FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' > ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" > ! dnl export/ExportFFmpeg.o" > FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" > AC_MSG_NOTICE([FFmpeg headers are available in the local tree]) > fi > fi > --- 369,377 ---- > if test "x$avformat_h_found" = "xyes" ; then > FFMPEG_LOCAL_AVAILABLE="yes" > FFMPEG_LOCAL_LIBS="" > FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' > ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o > export/ExportFFmpeg.o" > FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" > AC_MSG_NOTICE([FFmpeg headers are available in the local tree]) > fi > fi > *** audacity/configure Thu Jun 26 17:20:38 2008 > --- ../cvs/audacity/configure Tue Jul 1 02:38:05 2008 > *************** > *** 8055,8065 **** > if test "x$avcodec_h_found" = "xyes" ; then > if test "x$avformat_h_found" = "xyes" ; then > FFMPEG_LOCAL_AVAILABLE="yes" > FFMPEG_LOCAL_LIBS="" > FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' > ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" > FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" > { echo "$as_me:$LINENO: FFmpeg headers are available in the > local tree" >&5 > echo "$as_me: FFmpeg headers are available in the local tree" >&6;} > fi > fi > --- 8055,8067 ---- > if test "x$avcodec_h_found" = "xyes" ; then > if test "x$avformat_h_found" = "xyes" ; then > FFMPEG_LOCAL_AVAILABLE="yes" > FFMPEG_LOCAL_LIBS="" > FFMPEG_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/ffmpeg' > ! # not enough to complie currently: > FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o" > ! FFMPEG_LOCAL_OPTOBJS="import/ImportFFmpeg.o > export/ExportFFmpeg.o" > ! > FFMPEG_LOCAL_CPPSYMBOLS="USE_FFMPEG" > { echo "$as_me:$LINENO: FFmpeg headers are available in the > local tree" >&5 > echo "$as_me: FFmpeg headers are available in the local tree" >&6;} > fi > fi > *** audacity/src/Project.cpp Fri Jun 27 01:44:58 2008 > --- ../cvs/audacity/src/Project.cpp Tue Jul 1 10:26:35 2008 > *************** > *** 486,496 **** > VSBarID, > TrackPanelID > }; > > ! //also in ODManager.cpp > DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) > DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) > > BEGIN_EVENT_TABLE(AudacityProject, wxFrame) > EVT_MENU_OPEN(AudacityProject::OnMenuEvent) > EVT_MENU_CLOSE(AudacityProject::OnMenuEvent) > --- 486,499 ---- > VSBarID, > TrackPanelID > }; > > ! // also in ODManager.cpp resp. ODTask.cpp > ! // (should be rather in a header file) > ! BEGIN_DECLARE_EVENT_TYPES() > DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) > DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) > + END_DECLARE_EVENT_TYPES() > > BEGIN_EVENT_TABLE(AudacityProject, wxFrame) > EVT_MENU_OPEN(AudacityProject::OnMenuEvent) > EVT_MENU_CLOSE(AudacityProject::OnMenuEvent) > *** audacity/src/ondemand/ODManager.cpp Fri Jun 27 01:44:59 2008 > --- ../cvs/audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:35:25 2008 > *************** > *** 22,30 **** > --- 22,33 ---- > bool sHasLoadedOD=false; > > > > + BEGIN_DECLARE_EVENT_TYPES() > DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) > + END_DECLARE_EVENT_TYPES() > + > DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) > > //private constructor - Singleton. > ODManager::ODManager() > *************** > *** 330,334 **** > bool ODManager::HasLoadedODFlag() > { > return sHasLoadedOD; > } > ! \ No newline at end of file > --- 333,342 ---- > bool ODManager::HasLoadedODFlag() > { > return sHasLoadedOD; > } > ! > ! > ! > ! > ! > ! *** audacity/src/ondemand/ODTask.cpp Sun Jun 22 21:25:30 2008 > --- ../cvs/audacity/src/ondemand/ODTask.cpp Tue Jul 1 10:38:17 2008 > *************** > *** 23,31 **** > --- 23,34 ---- > #include <wx/wx.h> > #include "../Project.h" > > > + BEGIN_DECLARE_EVENT_TYPES() > DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) > + END_DECLARE_EVENT_TYPES() > + > DEFINE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE) > > /// Constructs an ODTask > ODTask::ODTask() > *************** > *** 136,140 **** > ///return > bool ODTask::IsComplete() > { > return PercentComplete() >= 1.0; > ! } > \ No newline at end of file > --- 139,147 ---- > ///return > bool ODTask::IsComplete() > { > return PercentComplete() >= 1.0; > ! } > ! > ! > ! > ! > *** audacity/lib-src/allegro/Makefile Tue Jul 1 03:55:44 2008 > --- audacity/lib-src/allegro/Makefile.new Tue Jul 1 17:59:06 2008 > *************** > *** 11,14 **** > --- 11,15 ---- > allegro.cpp.o \ > allegrord.cpp.o \ > + allegrosmfrd.cpp.o \ > allegrowr.cpp.o \ > mfallegro.cpp.o \ > *** audacity/lib-src/allegro/Makefile.in Wed Jan 23 06:03:10 2008 > --- audacity/lib-src/allegro/Makefile.in.new Tue Jul 1 17:58:19 2008 > *************** > *** 11,14 **** > --- 11,15 ---- > allegro.cpp.o \ > allegrord.cpp.o \ > + allegrosmfrd.cpp.o \ > allegrowr.cpp.o \ > mfallegro.cpp.o \ > *** audacity/src/FreqWindow.cpp Sat Jun 28 23:10:52 2008 > --- ../cvs/audacity/src/FreqWindow.cpp Tue Jul 1 01:02:00 2008 > *************** > *** 388,395 **** > --- 388,397 ---- > memDC.SetPen(*wxBLACK_PEN); > memDC.SetBrush(*wxWHITE_BRUSH); > memDC.DrawRectangle(r); > > + // Hack for Cygwin, where it happens to be #defined to DrawTextA > + #undef DrawText > if (!mProcessed) { > if (mData && mDataLen < mWindowSize) > memDC.DrawText(_("Not enough data selected."), r.x + 5, r.y + 5); > > *** audacity/src/export/Export.cpp Sun Jun 29 08:14:11 2008 > --- ../cvs/audacity/src/export/Export.cpp Tue Jul 1 01:50:25 2008 > *************** > *** 885,893 **** > --- 885,905 ---- > memDC.SetPen( mSelectedTrack == i ? *wxRED_PEN : *wxBLACK_PEN ); > memDC.DrawRectangle( mTrackRects[ i ] ); > > memDC.GetTextExtent( mTrackNames[ i ], &w, &h ); > + > + > + // ---------------------------------------------------------------- > + // There is a problem with DrawText versus DrawTextA on cygwin. > + // Contrary to FreqWindow.cpp:392nn, it is reversed for this file! > + // Here I 'need' DrawTextA to make it compile. > + + + #ifdef __CYGWIN__ > + memDC.DrawTextA( mTrackNames[ i ], > + #else > memDC.DrawText( mTrackNames[ i ], > + #endif > mTrackRects[ i ].x + ( mBoxWidth - w ) / 2, > mTrackRects[ i ].y + ( mTrackHeight - h ) / 2 ); > } > > *************** > *** 912,920 **** > --- 924,936 ---- > > memDC.SetPen( mSelectedChannel == i ? *wxRED_PEN : *wxBLACK_PEN ); > memDC.DrawRectangle( mChannelRects[ i ] ); > + #ifdef __CYGWIN__ > + memDC.DrawTextA( wxString::Format( _( "Channel: %2d" ), i + 1 ), > + #else > memDC.DrawText( wxString::Format( _( "Channel: %2d" ), i + 1 ), > + #endif > mChannelRects[ i ].x + ( mBoxWidth - w ) / 2, > mChannelRects[ i ].y + ( mChannelHeight - h ) / 2 ); > } > *** audacity/src/Menus.cpp Sun Jun 29 23:00:07 2008 > --- ../cvs/audacity/src/Menus.cpp Tue Jul 1 01:08:27 2008 > *************** > *** 29,36 **** > --- 29,40 ---- > simplifies construction of menu items. > > *//*******************************************************************/ > > + // hack for Cygwin: > + // defining either __USE_W32_SOCKETS or _WINSOCK_H avoids size_t/int > clash with gethostname. > + #define __USE_W32_SOCKETS > + > #include "Audacity.h" > > #include <iterator> > #include <math.h> > *** audacity/src/UploadDialog.cpp Sun Jun 1 08:57:29 2008 > --- ../cvs/audacity/src/UploadDialog.cpp Tue Jul 1 01:39:22 2008 > *************** > *** 14,23 **** > --- 14,33 ---- > \class UploadDialog > \brief A contributed class for uploading audio via FTP. > > *//*******************************************************************/ > > + // hack for Cygwin: > + // defining either __USE_W32_SOCKETS or _WINSOCK_H avoids size_t/int > clash > + // with gethostname in unistd.h included from Menu.cpp and WaveTrack.h > + // (Better place do define this might be UploadDialog.h, included > from both ? Or more risky?) > + // (Or, is simply some include missing here?) > + #ifdef __CYGWIN__ > + #define __USE_W32_SOCKETS > + #endif > + > + > #include "Audacity.h" > > #include <fstream> > #include <math.h> > #include <wx/dialog.h> > *** audacity/src/Theme.cpp Fri May 23 07:54:00 2008 > --- ../cvs/audacity/src/Theme.cpp Tue Jul 1 01:17:02 2008 > *************** > *** 929,937 **** > /// directory didn't exist, even if it successfully creates it. > /// so we create and then test if it exists instead. > /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument > /// under MSW > ! #ifdef __WXMSW__ > wxMkDir( FileNames::ThemeComponentsDir().fn_str() ); > #else > wxMkDir( FileNames::ThemeComponentsDir().fn_str(), 0700 ); > #endif > --- 929,937 ---- > /// directory didn't exist, even if it successfully creates it. > /// so we create and then test if it exists instead. > /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument > /// under MSW > ! #if defined(__WXMSW__) && !defined(__CYGWIN__) > wxMkDir( FileNames::ThemeComponentsDir().fn_str() ); > #else > wxMkDir( FileNames::ThemeComponentsDir().fn_str(), 0700 ); > #endif > *** audacity/src/effects/NoiseRemoval.cpp Tue Jun 3 09:16:41 2008 > --- ../cvs/audacity/src/effects/NoiseRemoval.cpp Tue Jul 1 04:00:20 > 2008 > *************** > *** 160,168 **** > /// directory didn't exist, even if it successfully creates it. > /// so we create and then test if it exists instead. > /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument > /// under MSW > ! #ifdef __WXMSW__ > wxMkDir( FileNames::NRPDir().fn_str() ); > #else > wxMkDir( FileNames::NRPDir().fn_str(), 0700 ); > #endif > --- 160,168 ---- > /// directory didn't exist, even if it successfully creates it. > /// so we create and then test if it exists instead. > /// \bug 2 in wxWidgets documentation; wxMkDir has only one argument > /// under MSW > ! #if defined(__WXMSW__) && !defined(__CYGWIN__) > wxMkDir( FileNames::NRPDir().fn_str() ); > #else > wxMkDir( FileNames::NRPDir().fn_str(), 0700 ); > #endif > *** audacity/src/WaveTrack.cpp Thu Jun 26 17:00:48 2008 > --- ../cvs/audacity/src/WaveTrack.cpp Tue Jul 1 01:31:26 2008 > *************** > *** 1931,1939 **** > --- 1931,1944 ---- > { > delete newClip; > return false; > } > + // on Cygwin there is no llrint. (Though, Mingw knows llrint !) > + #ifdef __CYGWIN__ > + longSampleCount here = floor(((t - c->GetStartTime() - > mOffset) * mRate) + 0.5); > + #else > longSampleCount here = llrint(floor(((t - c->GetStartTime() - > mOffset) * mRate) + 0.5)); > + #endif > newClip->Offset((double)here/(double)mRate); > mClips.Append(newClip); > return true; > } > *** audacity/src/ondemand/ODTaskThread.h Mon Jun 16 00:24:05 2008 > --- ../cvs/audacity/src/ondemand/ODTaskThread.h Tue Jul 1 01:58:26 2008 > *************** > *** 20,28 **** > --- 20,32 ---- > > > #ifndef __AUDACITY_ODTASKTHREAD__ > #define __AUDACITY_ODTASKTHREAD__ > + > + //vector not needed and does not compile on Cygwin > + #ifndef __CYGWIN__ > #include <vector> > + #endif > #include <wx/thread.h> > > class ODTask; > > *** audacity/src/effects/EffectCategory.h Mon Jun 23 18:18:13 2008 > --- ../cvs/audacity/src/effects/EffectCategory.h Mon Jun 30 13:17:19 > 2008 > *************** > *** 21,29 **** > #ifndef __AUDACITY_EFFECTCATEGORY__ > #define __AUDACITY_EFFECTCATEGORY__ > > #include <set> > ! #include <vector> > > #include <wx/string.h> > > #include "Effect.h" > --- 21,29 ---- > #ifndef __AUDACITY_EFFECTCATEGORY__ > #define __AUDACITY_EFFECTCATEGORY__ > > #include <set> > ! //#include <vector> > > #include <wx/string.h> > > #include "Effect.h" > *** audacity/src/Makefile Tue Jul 1 11:45:33 2008 > --- audacity/src/Makefile.vimbak Tue Jul 1 04:22:16 2008 > *************** > *** 20,26 **** > LOCAL_LIBS = allegro.a FileDialog.a libvorbisenc.a libvorbisfile.a > libvorbis.a libogg.a libmad.a libsndfile.a libFLAC++.a libFLAC.a > libid3tag.a libresample.a libSoundTouch.a libvamp-hostsdk.a libtwolame.a > liblrdf.a libraptor.a portaudio-v19/lib/libportaudio.a > portmixer/libportmixer.a > EXTRAOBJS = ../lib-src/portaudio-v19/lib/libportaudio.a > ../lib-src/portmixer/libportmixer.a > EXTRATARGETS = > ! LIBS = -L/usr/local/lib -lwx_msw_richtext-2.8 -lwx_msw_aui-2.8 > -lwx_msw_xrc-2.8 -lwx_msw_qa-2.8 -lwx_msw_html-2.8 -lwx_msw_adv-2.8 > -lwx_msw_core-2.8 -lwx_base_xml-2.8 -lwx_base_net-2.8 -lwx_base-2.8 > -lexpat -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 > -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwsock32 > -lwinmm -lwinmm -lm -lz > DIRS=blockfile commands effects effects/ladspa effects/nyquist > effects/vamp export import prefs toolbars widgets xml > > srcdir=. > --- 20,26 ---- > LOCAL_LIBS = allegro.a FileDialog.a libvorbisenc.a libvorbisfile.a > libvorbis.a libogg.a libmad.a libsndfile.a libFLAC++.a libFLAC.a > libid3tag.a libresample.a libSoundTouch.a libvamp-hostsdk.a libtwolame.a > liblrdf.a libraptor.a portaudio-v19/lib/libportaudio.a > portmixer/libportmixer.a > EXTRAOBJS = ../lib-src/portaudio-v19/lib/libportaudio.a > ../lib-src/portmixer/libportmixer.a > EXTRATARGETS = > ! LIBS = -L/usr/local/lib -lwx_msw_richtext-2.8 -lwx_msw_aui-2.8 > -lwx_msw_xrc-2.8 -lwx_msw_qa-2.8 -lwx_msw_html-2.8 -lwx_msw_adv-2.8 > -lwx_msw_core-2.8 -lwx_base_xml-2.8 -lwx_base_net-2.8 -lwx_base-2.8 > -lexpat -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 > -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwsock32 > -lwinmm -lwinmm -lm > DIRS=blockfile commands effects effects/ladspa effects/nyquist > effects/vamp export import prefs toolbars widgets xml > > srcdir=. > *** audacity/configure.in Thu Jun 26 17:20:39 2008 > --- ../cvs/audacity/configure.in Mon Jun 30 18:08:12 2008 > *************** > *** 541,548 **** > --- 541,549 ---- > LIBS="-framework AudioUnit -framework AudioToolbox $LIBS" > LIBS="-framework CoreAudio $LIBS -lz" > ;; > cygwin*) > + LIBS="$LIBS -lz" > ;; > *) > dnl Unix > AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no) > *************** > *** 577,584 **** > --- 578,586 ---- > ;; > cygwin*) > LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_win_wmme/portaudio.a" > EXTRAOBJS="$EXTRAOBJS > ../lib-src/portaudio/pa_win_wmme/portaudio.a" > + # needed also?? LIBS="$LIBS -lz" > ;; > *) > dnl Unix > LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_unix_oss/portaudio.a" > *** audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:44:04 2008 > --- ../cvs/audacity/src/ondemand/ODManager.cpp Tue Jul 1 10:49:52 2008 > *************** > *** 20,35 **** > bool gManagerCreated=false; > /// a flag that is set if we have loaded some OD blockfiles from PCM. > bool sHasLoadedOD=false; > > > ! > BEGIN_DECLARE_EVENT_TYPES() > DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) > END_DECLARE_EVENT_TYPES() > > DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) > > //private constructor - Singleton. > ODManager::ODManager() > { > mTerminate = false; > --- 20,36 ---- > bool gManagerCreated=false; > /// a flag that is set if we have loaded some OD blockfiles from PCM. > bool sHasLoadedOD=false; > > > ! #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) > BEGIN_DECLARE_EVENT_TYPES() > DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) > END_DECLARE_EVENT_TYPES() > > DEFINE_EVENT_TYPE(wxEVT_ODTASK_UPDATE) > + #endif > > //private constructor - Singleton. > ODManager::ODManager() > { > mTerminate = false; > *************** > *** 199,218 **** > --- 200,221 ---- > mQueuesMutex.Lock(); > mNeedsDraw += mQueues.size()>0?1:0; > mQueuesMutex.Unlock(); > // // //TODO:this is a little excessive, in the future only > redraw some, and if possible only the Tracks on the trackpanel.. > + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) > if(mNeedsDraw > 18) > { > mNeedsDraw=0; > wxCommandEvent event( wxEVT_ODTASK_UPDATE ); > AudacityProject::AllProjectsDeleteLock(); > AudacityProject* proj = GetActiveProject(); > if(proj) > proj->AddPendingEvent( event ); > AudacityProject::AllProjectsDeleteUnlock(); > } + #endif > } > mTerminateMutex.Unlock(); > //wxLogDebug Not thread safe. > *** audacity/src/Project.cpp Tue Jul 1 10:44:03 2008 > --- ../cvs/audacity/src/Project.cpp Tue Jul 1 11:01:51 2008 > *************** > *** 490,497 **** > --- 490,499 ---- > // also in ODManager.cpp resp. ODTask.cpp > // (should be rather in a header file) > + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) > BEGIN_DECLARE_EVENT_TYPES() > DECLARE_EVENT_TYPE(wxEVT_ODTASK_UPDATE, -1) > DECLARE_EVENT_TYPE(wxEVT_ODTASK_COMPLETE, -1) > END_DECLARE_EVENT_TYPES() > + #endif > BEGIN_EVENT_TABLE(AudacityProject, wxFrame) > *************** > *** 515,520 **** > --- 517,524 ---- > EVT_COMMAND(wxID_ANY, EVT_CAPTURE_KEYBOARD, > AudacityProject::OnCaptureKeyboard) > EVT_COMMAND(wxID_ANY, EVT_RELEASE_KEYBOARD, > AudacityProject::OnReleaseKeyboard) > + #if !defined(__CYGWIN__) || defined(ODTASK_WORKS_ON_CYGWIN) > EVT_COMMAND (wxID_ANY, wxEVT_ODTASK_UPDATE, > AudacityProject::OnODTaskUpdate) > EVT_COMMAND (wxID_ANY, wxEVT_ODTASK_COMPLETE, > AudacityProject::OnODTaskComplete) > + #endif END_EVENT_TABLE() > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! > Studies have shown that voting for your favorite open source project, > along with a healthy diet, reduces your potential for chronic lameness > and boredom. Vote Now at http://www.sourceforge.net/community/cca08 > > > ------------------------------------------------------------------------ > > _______________________________________________ > Audacity-devel mailing list > Audacity-devel@... > https://lists.sourceforge.net/lists/listinfo/audacity-devel ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ Audacity-devel mailing list Audacity-devel@... https://lists.sourceforge.net/lists/listinfo/audacity-devel |
|||||||||||||||
|
Richard Ash (audacity-help)
|
On Thu, 2008-07-03 at 09:17 +0200, Jan Kolar wrote:
> I had several build problems. > Since two of them appeared also to other people, I decided put an info > here. > > On Cygwin, the patches below made it built. > (I think I also had to disable nyquist, I mean --disable, not > --without). A number of these are now obsolete due to other changes in audacity since then. Unified diff patches would be significantly easier to read, and of course you never patch configure - you patch either configure.in or acinclude.m4 then run autoreconf to rebuild configure. Other developers, especially GSoC people, please check there isn't something related to your code in here. In detail: * p2_AUDACITY_DLL_API_Audacity_h.patch Correct magic should now be in Audacity.h to use MS-style visibility constructs with GCC (weird!) on cygwin. * p4_BeginEnd-DeclareEventType__OD.patch There is certainly something odd about the current usage of END_DECLARE_EVENT_TYPES() and friends in these files. Micheal, please review. I agree if we have to define the same event type multiple times, we should do it in one place and #include the file as needed. * cygwinHack2b_size_t_int_gethostname_UploadDialog_cpp.patch * cygwinHack2_size_t_int_gethostname_Menus_cpp.patch Can this bit of logic be moved a load closer to the source of the problem? In both cases it's put before #include "Audacity.h", which I'm sure doesn't know anything about either __USE_W32_SOCKETS or _WINSOCK_H. I presume the problem is that at some point some header we use (probably a WX one) includes the Windows header files with the bug in them. If so, then the logic needs to go as close to that header include as possible (if it can't go in the wx headers, then in our header immediately before the offending wx header). * cygwinHack4_llrint_WaveTrack.cpp.patch. Fine that you don't have llrint(). Not a good idea to just remove it and replace with a no-op. If you can't use llrint() then some sort of other rounding will be needed as a replacement. There will probably also want to be a better way of deciding whether or not to use the replacement (i.e. a configure check and symbol) so that when Cygwin actually has a compliant C library we stop using the replacement functions. You might like to look at lib-src/libsndfile/float_cast.h for some inspiration. * cygwinHack3b_MkDirMode_NoiseRemoval_cpp.patch * cygwinHack3_MkDirMode_Theme_cpp.patch Can someone using VC++ check whether the noted bug with wxwidgets still applies? According to the current docs all platforms should have the two-argument form of MkDirMode(), in which case we can remove the conditional compilation altogether. * cygwinHack5_vector_ODTaskThread_h.patch * cygwinHack5b_vector_EffectCategory_h.patch As far as I can see the #include of <vector> is redundant in both these files and could be removed for all platforms. Either author care to disagree? Richard ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ audacity-devel mailing list audacity-devel@... https://lists.sourceforge.net/lists/listinfo/audacity-devel |
|||||||||||||||
|
Lars Luthman-3
|
On Sun, 2008-07-06 at 17:38 +0100, Richard Ash wrote:
> * cygwinHack5_vector_ODTaskThread_h.patch > * cygwinHack5b_vector_EffectCategory_h.patch > As far as I can see the #include of <vector> is redundant in both these > files and could be removed for all platforms. Either author care to > disagree? Nope, looks like it isn't used in EffectCategory.h. I'll remove it in my next commit unless someone else beats me to it. --ll ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ audacity-devel mailing list audacity-devel@... https://lists.sourceforge.net/lists/listinfo/audacity-devel |
|||||||||||||||
|
Richard Ash (audacity-help)
|
On Mon, 2008-07-07 at 18:24 +0200, Lars Luthman wrote:
> On Sun, 2008-07-06 at 17:38 +0100, Richard Ash wrote: > > * cygwinHack5_vector_ODTaskThread_h.patch > > * cygwinHack5b_vector_EffectCategory_h.patch > > As far as I can see the #include of <vector> is redundant in both these > > files and could be removed for all platforms. Either author care to > > disagree? > > Nope, looks like it isn't used in EffectCategory.h. I'll remove it in my > next commit unless someone else beats me to it. Thanks. Anyone else had a chance to look at their bits of this yet? Richard ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ audacity-devel mailing list audacity-devel@... https://lists.sourceforge.net/lists/listinfo/audacity-devel |
|||||||||||||||
|
Michael Chinen
|
2008/7/7 Richard Ash <richard@...>:
& | |||||||||||||||