Do you mean the static library? Yes, there’s a project in extras to do that. But it’s not a great way of doing it, as it doesn’t give you any control over which modules to use, or their config options. You’d have to create your own custom static lib project if you wanted to build anything more specific than “all the modules with their default options”.
What happened to
// Settings
//#define JUCE_FORCE_DEBUG
//#define JUCE_LOG_ASSERTIONS
//#define JUCE_ENABLE_REPAINT_DEBUGGING
//#define JUCE_CHECK_MEMORY_LEAKS
//#define JUCE_CATCH_UNHANDLED_EXCEPTIONS
// All Platforms
#define JUCE_OPENGL 0
#define JUCE_USE_FLAC 0
#define JUCE_USE_OGGVORBIS 0
// Trying to turn these off causes compile errors
//#define JUCE_INCLUDE_ZLIB_CODE
//#define JUCE_INCLUDE_FLAC_CODE
//#define JUCE_INCLUDE_OGGVORBIS_CODE
//#define JUCE_INCLUDE_PNGLIB_CODE
//#define JUCE_INCLUDE_JPEGLIB_CODE
// Windows and MacOS
#define JUCE_QUICKTIME 0
#define JUCE_USE_CDBURNER 0
#define JUCE_USE_CDREADER 0
#define JUCE_USE_CAMERA 0
#define JUCE_WEB_BROWSER 0
// Windows
//#define JUCE_ASIO
//#define JUCE_WASAPI
//#define JUCE_DIRECTSOUND
//#define JUCE_DIRECTSHOW
//#define JUCE_MEDIAFOUNDATION
//#define JUCE_DIRECT2D
// MacOS
#define JUCE_SUPPORT_CARBON 0
// Linux
//#define JUCE_ALSA
//#define JUCE_USE_XINERAMA
//#define JUCE_USE_XSHM
//#define JUCE_USE_XRENDER
//#define JUCE_USE_XCURSOR
// Plugins
#define JUCE_PLUGINHOST_VST 0
#define JUCE_PLUGINHOST_AU 0
//#define JUCE_ONLY_BUILD_CORE_LIBRARY
Oh, and also, XCode 4 lets you decide which targets groups, folder references, subprojects, or individual source files belong to. So if I make my own app and include a copy of a Juce static lib project (using relative references) with its entire source tree, as a child project of my app project, I could go into the Juce lib and if each module was its own group, or even if each module was its own project, adjust the checkbox in the Utilities panel on the right and check or uncheck whether or not it is a member of any of my app targets.
Visual Studio 2010 allows the same control, although its not quite as good as XCode4. You can choose to exclude source files from a build. So in static Juce library project I could simply go into the group and select the sources I want to exclude, hit Project Properties, and set “Exclude From Build: Yes”.
This image shows what I’m talking about. Visual Studio is not quite as refined, but you can still achieve the same result (just a little more work). Everything you see in this screenshot is part of DspFilters, available right now in the repo in my sig.
[attachment=0]xcode4setup.jpg[/attachment]
Also note how I designed both XCode 4 projects (JuceAmalgam and DSPFiltersDemo) so they are capable of building for both Mac OS X and iOS. A single project file capable of building for every device.
The JuceAmalgam project, in addition to being a child project of DSPFiltersDemo, is also capable of standing on its own. You could open it up directly, without DSPFiltersDemo, and build it, and it will produce libJuceAmalgamMac.a and libJuceAmalgamiOS.a which you could then link to. And, I structured the Juce amalgamation sources in the svn repo so they are independent of DSPFilters, to make it easier to re-use the amalgamation.
Take a look at the Juce part of the DSPFilters repo:
Another screenshot of the working copy to really drive the point home:
[attachment=0]amalgam_workingcopy.jpg[/attachment]