mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-23 01:44:22 +00:00
Build: Update the minimum C++ standard to C++17
This commit is contained in:
parent
e9e39de069
commit
b3a4d54a72
90 changed files with 213 additions and 141 deletions
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes to collect analytics and send to destinations
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_gui_basics
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
description: Classes for audio buffer manipulation, midi message handling, synthesis, etc.
|
||||
website: http://www.juce.com/juce
|
||||
license: ISC
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_core
|
||||
OSXFrameworks: Accelerate
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
description: Classes to play and record from audio and MIDI I/O devices
|
||||
website: http://www.juce.com/juce
|
||||
license: ISC
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_audio_basics, juce_events
|
||||
OSXFrameworks: CoreAudio CoreMIDI AudioToolbox
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for reading and writing various audio file formats.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_audio_basics
|
||||
OSXFrameworks: CoreAudio CoreMIDI QuartzCore AudioToolbox
|
||||
|
|
|
|||
|
|
@ -23,6 +23,6 @@
|
|||
|
||||
add_executable(juce_lv2_helper LV2/juce_LV2TurtleDumpProgram.cpp)
|
||||
add_executable(juce::juce_lv2_helper ALIAS juce_lv2_helper)
|
||||
target_compile_features(juce_lv2_helper PRIVATE cxx_std_14)
|
||||
target_compile_features(juce_lv2_helper PRIVATE cxx_std_17)
|
||||
set_target_properties(juce_lv2_helper PROPERTIES BUILD_WITH_INSTALL_RPATH ON)
|
||||
target_link_libraries(juce_lv2_helper PRIVATE ${CMAKE_DL_LIBS})
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for building VST, VST3, AU, AUv3 and AAX plugins.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_audio_processors
|
||||
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ JUCE_BEGIN_IGNORE_WARNINGS_LEVEL_MSVC (0, 4505 4702 6011 6031 6221 6386 6387 633
|
|||
|
||||
JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wdeprecated-copy-dtor",
|
||||
"-Wnon-virtual-dtor",
|
||||
"-Wdeprecated",
|
||||
"-Wreorder",
|
||||
"-Wunsequenced",
|
||||
"-Wint-to-pointer-cast",
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for loading and playing VST, AU, LADSPA, or internally-generated audio processors.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_gui_extra, juce_audio_basics
|
||||
OSXFrameworks: CoreAudio CoreMIDI AudioToolbox
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for audio-related GUI and miscellaneous tasks.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_audio_processors, juce_audio_formats, juce_audio_devices
|
||||
OSXFrameworks: CoreAudioKit DiscRecording
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: The Box2D physics engine and some utility classes.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_graphics
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
description: The essential set of basic JUCE classes, as required by all the other JUCE modules. Includes text, container, memory, threading and i/o functionality.
|
||||
website: http://www.juce.com/juce
|
||||
license: ISC
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies:
|
||||
OSXFrameworks: Cocoa Foundation IOKit
|
||||
|
|
|
|||
|
|
@ -113,18 +113,7 @@
|
|||
#include <iphlpapi.h>
|
||||
#include <accctrl.h>
|
||||
#include <aclapi.h>
|
||||
|
||||
#if ! JUCE_CXX17_IS_AVAILABLE
|
||||
#pragma push_macro ("WIN_NOEXCEPT")
|
||||
#define WIN_NOEXCEPT
|
||||
#endif
|
||||
|
||||
#include <mapi.h>
|
||||
|
||||
#if ! JUCE_CXX17_IS_AVAILABLE
|
||||
#pragma pop_macro ("WIN_NOEXCEPT")
|
||||
#endif
|
||||
|
||||
#include <float.h>
|
||||
#include <process.h>
|
||||
#include <shlobj.h>
|
||||
|
|
|
|||
|
|
@ -30,8 +30,8 @@
|
|||
// GCC
|
||||
#if JUCE_GCC
|
||||
|
||||
#if (__GNUC__ * 100 + __GNUC_MINOR__) < 500
|
||||
#error "JUCE requires GCC 5.0 or later"
|
||||
#if (__GNUC__ * 100 + __GNUC_MINOR__) < 700
|
||||
#error "JUCE requires GCC 7.0 or later"
|
||||
#endif
|
||||
|
||||
#ifndef JUCE_EXCEPTIONS_DISABLED
|
||||
|
|
@ -49,8 +49,8 @@
|
|||
// Clang
|
||||
#if JUCE_CLANG
|
||||
|
||||
#if (__clang_major__ < 3) || (__clang_major__ == 3 && __clang_minor__ < 4)
|
||||
#error "JUCE requires Clang 3.4 or later"
|
||||
#if (__clang_major__ < 6)
|
||||
#error "JUCE requires Clang 6 or later"
|
||||
#endif
|
||||
|
||||
#ifndef JUCE_COMPILER_SUPPORTS_ARC
|
||||
|
|
@ -87,8 +87,8 @@
|
|||
#endif
|
||||
|
||||
//==============================================================================
|
||||
#if ! JUCE_CXX14_IS_AVAILABLE
|
||||
#error "JUCE requires C++14 or later"
|
||||
#if ! JUCE_CXX17_IS_AVAILABLE
|
||||
#error "JUCE requires C++17 or later"
|
||||
#endif
|
||||
|
||||
//==============================================================================
|
||||
|
|
@ -100,10 +100,5 @@
|
|||
#define JUCE_COMPILER_SUPPORTS_NOEXCEPT 1
|
||||
#define JUCE_DELETED_FUNCTION = delete
|
||||
#define JUCE_CONSTEXPR constexpr
|
||||
#endif
|
||||
|
||||
#if JUCE_CXX17_IS_AVAILABLE
|
||||
#define JUCE_NODISCARD [[nodiscard]]
|
||||
#else
|
||||
#define JUCE_NODISCARD
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -72,6 +72,7 @@
|
|||
#include <utility>
|
||||
#include <vector>
|
||||
#include <set>
|
||||
#include <optional>
|
||||
|
||||
//==============================================================================
|
||||
#include "juce_CompilerSupport.h"
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for various basic cryptography functions, including RSA, Blowfish, MD5, SHA, etc.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_core
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for undo/redo management, and smart data structures.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_events
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for audio buffer manipulation, digital audio processing, filtering, oversampling, fast math functions etc.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_audio_formats
|
||||
OSXFrameworks: Accelerate
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ struct WaveShaper
|
|||
};
|
||||
|
||||
//==============================================================================
|
||||
#if JUCE_CXX17_IS_AVAILABLE && ! ((JUCE_MAC || JUCE_IOS) && JUCE_CLANG && __clang_major__ < 10)
|
||||
#if ! ((JUCE_MAC || JUCE_IOS) && JUCE_CLANG && __clang_major__ < 10)
|
||||
template <typename Functor>
|
||||
static WaveShaper<typename std::invoke_result<Functor>, Functor> CreateWaveShaper (Functor functionToUse) { return {functionToUse}; }
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
description: Classes for running an application's main event loop and sending/receiving messages, timers, etc.
|
||||
website: http://www.juce.com/juce
|
||||
license: ISC
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_core
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for 2D vector graphics, image loading/saving, font handling, etc.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_events
|
||||
OSXFrameworks: Cocoa QuartzCore
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Basic user-interface components and related classes.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_graphics juce_data_structures
|
||||
OSXFrameworks: Cocoa QuartzCore
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Miscellaneous GUI classes for specialised tasks.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_gui_basics
|
||||
OSXFrameworks: WebKit
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for rendering OpenGL in a JUCE window.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_gui_extra
|
||||
OSXFrameworks: OpenGL
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Open Sound Control implementation.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_events
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for online product authentication
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_cryptography
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
description: Classes for playing video and capturing camera input.
|
||||
website: http://www.juce.com/juce
|
||||
license: GPL/Commercial
|
||||
minimumCppStandard: 14
|
||||
minimumCppStandard: 17
|
||||
|
||||
dependencies: juce_gui_extra
|
||||
OSXFrameworks: AVKit AVFoundation CoreMedia
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue