81dbc20bac
Add basic test for PluginManager and LADSPA plugins
2013-07-15 12:40:06 -04:00
83e05ec0ec
Use ARDOUR::ladspa_search_path and PBD::find_matching_files to find LADSPA modules
2013-07-15 12:38:03 -04:00
5bc4e54b7d
Add ARDOUR::ladspa_search_path function to get LADSPA module directories
2013-07-15 08:08:09 -04:00
2c7a1179c6
Fix finding panner modules on windows by looking for files with *.dll extension
2013-07-15 08:07:12 -04:00
49edb90484
Add ladspa directory name to directory names
2013-07-15 08:06:39 -04:00
c00e03cced
Don't include jack/weakjack.h header when compiling for windows
2013-07-15 08:06:09 -04:00
43f7813b24
Fix portability of Session::source_search_path
2013-07-15 08:05:37 -04:00
f08d9591e6
Fix reading and writing of files on windows in PBD::FileManager
2013-07-15 07:55:36 -04:00
542c4b024e
Don't use errno after g_file_test on windows
2013-07-15 07:55:01 -04:00
5131b8300f
Use g_open instead of ::open in PBD::FileManager
...
g_open is a macro that evaluates to ::open on linux(and mac) so this
is only a change for windows.
2013-07-15 07:54:29 -04:00
db3edc4018
Use ::write instead of pwrite in AudioSource::compute_and_write_peaks for portability
...
This destroys the atomicity of pwrite() and thus suggests that we should do something else to ensure
that multithread access to peakfiles (if it does in fact exist) is safe. OTOH, there may be no
such thing, since they are designed for the GUI, which is single threaded (for now)
2013-07-15 07:53:45 -04:00
13a0f14db7
Use ::read instead of pread in AudioSource::read_peaks for portability
...
This destroys the atomicity of pread() and thus suggests that we should do something else to ensure
that multithread access to peakfiles (if it does in fact exist) is safe. OTOH, there may be no
such thing, since they are designed for the GUI, which is single threaded (for now)
2013-07-15 07:52:37 -04:00
Michael R. Fisher
453713178f
Housekeeping
2013-07-14 21:40:20 -05:00
Michael R. Fisher
be44b3c37b
set the flag true
2013-07-14 21:22:34 -05:00
Michael R. Fisher
e487814e9d
Lazily load bundled LV2 plugins in LV2PluginInfo::discover()
...
- Do this instead of finding them in the static ctor of LV2World
- Prevents usage of ARDOUR_DLL_PATH environment variable before
it is set in main(...)
2013-07-14 21:19:59 -05:00
Michael R. Fisher
879bab6a53
Formatting only.
2013-07-14 21:16:08 -05:00
Michael R. Fisher
23bf9b11c6
Use a static string variable for dll path.
...
Making this consistent with all other funtions in this file.
2013-07-14 21:06:25 -05:00
0aac62e013
Merge branch 'master' into windows
2013-07-14 08:27:22 -04:00
394f2b3ca7
Use boost::scoped_array in AudioSource::compute_and_write_peaks
2013-07-13 17:44:16 -04:00
90c2a1c69d
Use boost::scoped_array in AudioSource::build_peaks_from_scratch
2013-07-13 17:43:36 -04:00
ebdf73a077
Remove use of goto in AudioSource::read_peaks
2013-07-13 17:43:00 -04:00
e5cc56a523
Use boost::scoped_array for controlling scope of peak data in AudioSource::read_peaks
2013-07-13 17:42:34 -04:00
b84d032b3a
Use boost::scoped_array in AudioSource::read_peaks
2013-07-13 17:41:48 -04:00
f754e1c0bb
Use boost::scoped_ptr to control scope of peakfile descriptor
2013-07-13 17:40:42 -04:00
1bd570c276
Replace conditional peak debugging with DEBUG_TRACE macro usage
...
Also add some extra debugging info
2013-07-13 17:39:55 -04:00
ac16da8ea6
Fix saving sessions on windows by using g_rename instead of ::rename
2013-07-13 17:33:30 -04:00
868b06efd6
Revert "Fix saving sessions on windows by using g_rename instead of ::rename"
...
This reverts commit 2e2c22ad3c
.
2013-07-13 17:10:11 -04:00
2e2c22ad3c
Fix saving sessions on windows by using g_rename instead of ::rename
2013-07-13 17:01:47 -04:00
e8ecd32732
Add test for Glib::Mutex::trylock
...
Behaviour of this method is different on WIN32
2013-07-13 17:00:18 -04:00
6542ce76d0
Don't use trylock in assertions on windows as it will fail
...
glib uses TryEnterCriticalSection on windows which will return true
if the lock as able to be locked *or* is already locked by the current
thread.
2013-07-13 16:57:04 -04:00
1fd2412f5b
Add config/data filesystem paths to search on windows
2013-07-13 16:56:12 -04:00
ccdc6fcd6a
Add DEBUG_TRACE output to file utility functions in libpbd
2013-07-13 16:55:40 -04:00
550eeecc63
Add header include required by mingw compiler
2013-07-13 16:44:59 -04:00
48f8863b2c
Use g_mkstemp in audiographer for portability
2013-07-13 16:44:37 -04:00
3be0f0aa0b
Use pthread_name instead of pthread_self for portability
2013-07-13 16:44:03 -04:00
57066732ca
Use pthread_name instead of pthread_self for portability
2013-07-13 16:43:50 -04:00
ad89d1e031
Use custom comparator in threadmap for pthread impl with mingw
2013-07-13 08:44:58 -04:00
eddcc868ba
Disable non-realtime midi ports in windows build - THIS NEEDS FIXING
2013-07-13 08:26:54 -04:00
5bae4373c7
implement visual-sensitivity (gray out) for faders
...
Note: bar-controller sensitivity state is not yet set if
automation-mode changes to/from play, but the widget now
supports that.
2013-07-12 19:07:07 +02:00
e0bbc0b435
minor peak-meter performance tweak
...
* redraw only missing parts of the outside rectangle,
* don't redraw RMS meter if value has not changed
2013-07-12 17:56:42 +02:00
01ed4f3388
undef SearchPath where needed as it is defined via windows.h
2013-07-11 15:24:36 -04:00
f80859f3bd
Use uint32_t type instead of uint
2013-07-11 15:16:50 -04:00
b8c369fe2d
Include pbd/timersub.h for mingw build
2013-07-11 15:16:11 -04:00
965883bc22
Use Glib functions to create tmp file path
2013-07-11 15:15:40 -04:00
ef3ea6c6a6
Work around badly chosen argument name in giomm/dbusmessage.h
...
interface is defined in windows/mingw headers. hopefully this will
be fixed in giomm at some point and this crap can be removed
2013-07-11 15:14:51 -04:00
abd478d1c8
Include pthread.h in butler.h for mingw build
...
Jack2 on windows doesn't include pthread headers so it is necessary
to include them explicitly.
2013-07-11 15:11:22 -04:00
9f7e293c3b
Use Glib::usleep for portability
2013-07-11 15:10:10 -04:00
01a4c3186a
Use PBD::pthread_name in debug output for portability
2013-07-11 15:09:29 -04:00
2b93c878d0
Disable some non-portable code that is only used for debugging
2013-07-11 15:08:47 -04:00
fa2dcea820
Use jack_native_thread_t for portability
...
Requires future attention in AudioEngine due to timbyr's use JACK2 extension to JACK API
2013-07-11 15:08:10 -04:00
a69847b671
Include pbd/localtime_r.h for mingw build
2013-07-11 15:00:56 -04:00
c43ff1113d
Add ::localtime_r implementation for mingw
2013-07-11 15:00:22 -04:00
5d125e1eae
Use PBD::pthread_name in debug output
2013-07-11 14:58:00 -04:00
09e471545b
remove direct of realpath(2), replace with canonical_path() which is a no-op on windows
2013-07-11 14:57:16 -04:00
2ddab2d2f6
Use PBD::GlibSemaphore in Butler to signal requests on windows
2013-07-11 14:41:08 -04:00
75f0dfb4a8
fix compiler warning
2013-07-11 20:39:24 +02:00
29f178aa4b
Add PBD::GlibSemaphore class that uses PBD::atomic_counter etc.
...
PBD::Semaphore can really be used instead of this class now,
but it didn't exist when I needed this class and it is header only, which
causes some problems because windows.h is included
2013-07-11 14:38:53 -04:00
57f3ba6a1f
Add wrapping class for glib atomic counter
2013-07-11 14:37:27 -04:00
dd55df80f0
Refactor the non-portable parts of Butler thread into new functions
2013-07-11 14:36:43 -04:00
0f1ed673d0
Move request pipe setup into separate function
2013-07-11 14:35:26 -04:00
6a8901eb8d
Include pbd/timersub.h in session_midi.cc
2013-07-11 14:31:15 -04:00
2218a70d37
Add timersub macro for platforms where it isn't defined
2013-07-11 14:30:38 -04:00
b6afce39a4
Undef SearchPath where needed as it is defined via windows.h
...
This is pretty annoying, might even be worth renaming the class
2013-07-11 14:27:24 -04:00
4d71933f5b
Add cast for mingw compiler
2013-07-11 14:23:20 -04:00
742753a996
Don't require liblrdf on windows
...
This removes dependence on liblrdf, libraptor and libxslt
2013-07-11 14:20:02 -04:00
1b21eec042
Fix for ambiguity of UUID type on windows
2013-07-11 14:13:55 -04:00
83ed3d7dcc
Use glibmm for modules instead of dlfch.h
2013-07-11 13:58:48 -04:00
058ebf98b9
Disable increasing open file limit on windows
2013-07-11 13:55:03 -04:00
ef9ed302e3
Add necessary header include for int64_t type
2013-07-11 13:53:35 -04:00
0e513f0469
Include header that declares ::free for mingw build
2013-07-11 13:53:12 -04:00
157b0e385a
Disable peakfile reading and writing on windows for now
...
There is no point trying to implement this until it can be tested
2013-07-11 13:52:29 -04:00
27a5a589ed
INFINITE is defined via windows.h so undefine it
2013-07-11 13:05:24 -04:00
0c3bbd41dd
Fix for mingw compiler
2013-07-11 13:04:39 -04:00
350bd56a06
Fix evoral test to compile with mingw
2013-07-11 13:03:55 -04:00
2b9f50ffc7
include winsock2.h on windows in libsmf for htons/l etc.
2013-07-11 13:03:24 -04:00
8d1f88f87b
Include unistd.h for usleep on MinGW
2013-07-11 13:01:16 -04:00
ab8918fa73
Changes to get IPMIDIPort to compile(but not functional) on MinGW
2013-07-11 13:00:42 -04:00
8a9cdd04c5
Include pthread.h as it isn't included via jack headers on windows
2013-07-11 12:58:44 -04:00
4adb2f97cc
Use timeout source to process ui requests on windows
...
Using a timeout source to process ui events/requests is suboptimal
but it works for the moment. Have to use g_source functions as glibmm
functions are not thread safe AFAIK.
Behaviour should be exactly the same on unix.
2013-07-11 12:56:35 -04:00
7626cd68ac
Hide UI request mechanism from inheriting classes
2013-07-11 12:52:46 -04:00
5d20b3e24e
Ifdef unix specific test for mingw build
2013-07-11 12:47:56 -04:00
cb23bdd547
Don't use parts of signal.h that aren't defined when using mingw
2013-07-11 12:46:52 -04:00
e70db68fac
Add implementation for ProcessSemaphore on windows
2013-07-11 12:46:05 -04:00
8b63e005a1
Include io.h on windows for access
2013-07-11 12:44:33 -04:00
daf570ea5d
Add an empty implementation of PBD::mountpoint for mingw
...
PBD::mountpoint is only used to find peakfiles for old sessions, so it might
not be necessary to implement this for windows.
2013-07-11 12:43:55 -04:00
d7b7953705
Use pbd/resource.h in PBD::FileManager
2013-07-11 12:42:53 -04:00
4eff7b4e82
Add pbd/resource.h for portable access to resource limits
2013-07-11 12:41:55 -04:00
38ebf63961
Fallback to gettimeofday for access time in FileManager
2013-07-11 12:39:24 -04:00
acc13d37a7
Use boost::tokenizer in PBD::parse_debug_options for portability
2013-07-11 12:36:16 -04:00
36a55b8674
Use boost::uuid instead of libuuid
2013-07-11 12:30:32 -04:00
62cfd6a752
Only call configure in surface subdirectories if the required deps are available
...
I think these checks should probably be in the surface build files so they
are self contained...
2013-07-11 12:23:05 -04:00
5162181767
Fix some usage of non-standard types for portability
2013-07-11 12:05:37 -04:00
b9fa882c56
Use PBD::pthread_name in debug output instead of pthread_self
2013-07-11 12:01:17 -04:00
1fad4714e3
Use PBD::pthread_name in debug output for portability
2013-07-11 11:53:24 -04:00
2048f766e9
Use pthread_equal in libmidi++ for portability
2013-07-11 11:51:59 -04:00
157e21369e
Use default constructor for pthread_t in InterthreadInfo ctor
2013-07-11 11:50:25 -04:00
227cf470ba
Use a std::list instead of std::set for the ThreadMap in libpbd
...
pthread_t can't work with std::set using the pthread lib on windows
as there is no operator< defined for the type
2013-07-11 11:43:43 -04:00
117118e5f0
Use pthread_equals in libpbd for portability
2013-07-11 11:40:59 -04:00
f47499f157
Use g_random_int instead of ::random for portability
2013-07-11 11:38:46 -04:00
27eecdc88b
Use g_setenv and g_getenv for portability
2013-07-11 11:37:25 -04:00