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
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
f83b435c83
Add clean script to windows stuff to save a bit of typing
2013-07-11 12:26:29 -04:00
3b8f2e82f2
Add Windows building/packaging scripts
2013-07-11 12:23:50 -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
23bec25bf5
Remove non-portable and unnused header includes
2013-07-11 11:34:37 -04:00
e842ae539a
Fix portability of test and use temporary test
2013-07-11 11:12:39 -04:00