From bbd7a29c45a3aba3c3febe6fef6dc51c5468ac55 Mon Sep 17 00:00:00 2001 From: jules Date: Wed, 5 Sep 2007 16:08:40 +0000 Subject: [PATCH] --- build/linux/JUCE.make | 18 ++++++++++++++++++ .../juce_linux_Windowing.cpp | 19 ++++++++++++++++--- extras/juce demo/build/linux/JuceDemo.make | 4 ++-- .../build/linux/jucedemo_premake.lua | 4 ++-- 4 files changed, 38 insertions(+), 7 deletions(-) diff --git a/build/linux/JUCE.make b/build/linux/JUCE.make index 902b9baf37..af30069479 100644 --- a/build/linux/JUCE.make +++ b/build/linux/JUCE.make @@ -107,6 +107,9 @@ OBJECTS := \ $(OBJDIR)/juce_MidiMessage.o \ $(OBJDIR)/juce_MidiMessageCollector.o \ $(OBJDIR)/juce_MidiMessageSequence.o \ + $(OBJDIR)/juce_AudioProcessor.o \ + $(OBJDIR)/juce_AudioProcessorEditor.o \ + $(OBJDIR)/juce_GenericAudioProcessorEditor.o \ $(OBJDIR)/juce_AiffAudioFormat.o \ $(OBJDIR)/juce_AudioCDReader.o \ $(OBJDIR)/juce_AudioFormat.o \ @@ -790,6 +793,21 @@ $(OBJDIR)/juce_MidiMessageSequence.o: ../../src/juce_appframework/audio/midi/juc @echo $(notdir $<) @$(CXX) $(CXXFLAGS) -o $@ -c $< +$(OBJDIR)/juce_AudioProcessor.o: ../../src/juce_appframework/audio/processors/juce_AudioProcessor.cpp + -@$(CMD_MKOBJDIR) + @echo $(notdir $<) + @$(CXX) $(CXXFLAGS) -o $@ -c $< + +$(OBJDIR)/juce_AudioProcessorEditor.o: ../../src/juce_appframework/audio/processors/juce_AudioProcessorEditor.cpp + -@$(CMD_MKOBJDIR) + @echo $(notdir $<) + @$(CXX) $(CXXFLAGS) -o $@ -c $< + +$(OBJDIR)/juce_GenericAudioProcessorEditor.o: ../../src/juce_appframework/audio/processors/juce_GenericAudioProcessorEditor.cpp + -@$(CMD_MKOBJDIR) + @echo $(notdir $<) + @$(CXX) $(CXXFLAGS) -o $@ -c $< + $(OBJDIR)/juce_AiffAudioFormat.o: ../../src/juce_appframework/audio/audio_file_formats/juce_AiffAudioFormat.cpp -@$(CMD_MKOBJDIR) @echo $(notdir $<) diff --git a/build/linux/platform_specific_code/juce_linux_Windowing.cpp b/build/linux/platform_specific_code/juce_linux_Windowing.cpp index 77673aef88..c87a0f0a60 100644 --- a/build/linux/platform_specific_code/juce_linux_Windowing.cpp +++ b/build/linux/platform_specific_code/juce_linux_Windowing.cpp @@ -40,7 +40,7 @@ #include #include #include -#include +#include #if JUCE_USE_XINERAMA /* If you're trying to use Xinerama, you'll need to install the "libxinerama-dev" package.. @@ -2565,14 +2565,27 @@ void Desktop::setMousePosition (int x, int y) throw() //============================================================================== -static bool screenSaverAllowed = false; +static bool screenSaverAllowed = true; void Desktop::setScreenSaverEnabled (const bool isEnabled) throw() { if (screenSaverAllowed != isEnabled) { screenSaverAllowed = isEnabled; - XScreenSaverSuspend (display, ! isEnabled); + + typedef void (*tXScreenSaverSuspend) (Display*, Bool); + static tXScreenSaverSuspend xScreenSaverSuspend = 0; + + if (xScreenSaverSuspend == 0) + { + void* h = dlopen ("libXss.so", RTLD_GLOBAL | RTLD_NOW); + + if (h != 0) + xScreenSaverSuspend = (tXScreenSaverSuspend) dlsym (h, "XScreenSaverSuspend"); + } + + if (xScreenSaverSuspend != 0) + xScreenSaverSuspend (display, ! isEnabled); } } diff --git a/extras/juce demo/build/linux/JuceDemo.make b/extras/juce demo/build/linux/JuceDemo.make index a6476543ab..66f84dccb0 100644 --- a/extras/juce demo/build/linux/JuceDemo.make +++ b/extras/juce demo/build/linux/JuceDemo.make @@ -13,7 +13,7 @@ ifeq ($(CONFIG),Debug) CPPFLAGS := -MMD -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -I "/usr/include" CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -D_DEBUG -ggdb CXXFLAGS := $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -mwindows -L"/usr/X11R6/lib/" -L"../../../../bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -lXss -ljuce_debug + LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -mwindows -L"/usr/X11R6/lib/" -L"../../../../bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -ljuce_debug LDDEPS := RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -I "/usr/include" TARGET := jucedemo @@ -28,7 +28,7 @@ ifeq ($(CONFIG),Release) CPPFLAGS := -MMD -D "LINUX=1" -D "NDEBUG=1" -I "/usr/include" CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -O2 CXXFLAGS := $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -mwindows -s -L"/usr/X11R6/lib/" -L"../../../../bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -lXss -ljuce + LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -mwindows -s -L"/usr/X11R6/lib/" -L"../../../../bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -ljuce LDDEPS := RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -I "/usr/include" TARGET := jucedemo diff --git a/extras/juce demo/build/linux/jucedemo_premake.lua b/extras/juce demo/build/linux/jucedemo_premake.lua index 5fc9968fc5..abab2a2e84 100644 --- a/extras/juce demo/build/linux/jucedemo_premake.lua +++ b/extras/juce demo/build/linux/jucedemo_premake.lua @@ -31,11 +31,11 @@ package.libpaths = { } package.config["Debug"].links = { - "freetype", "pthread", "rt", "X11", "GL", "GLU", "Xinerama", "asound", "Xss", "juce_debug" + "freetype", "pthread", "rt", "X11", "GL", "GLU", "Xinerama", "asound", "juce_debug" } package.config["Release"].links = { - "freetype", "pthread", "rt", "X11", "GL", "GLU", "Xinerama", "asound", "Xss", "juce" + "freetype", "pthread", "rt", "X11", "GL", "GLU", "Xinerama", "asound", "juce" } package.linkflags = { "static-runtime" }