Diff
checker
텍스트
텍스트
이미지
문서
Excel
폴더
Legal
Enterprise
데스크톱
요금제
로그인
데스크톱 앱 다운로드
텍스트 비교
두 텍스트 파일의 차이점을 찾아보세요
도구
기록
실시간 편집
변경 없는 행 숨기기
줄바꿈 비활성화
레이아웃
나란히 보기
합쳐 보기
비교 단위
스마트
단어
글자
구문 강조
언어 선택
제외
텍스트 변환
첫 변경으로
수정
Diffchecker Desktop
가장 안전하게 Diffchecker를 사용하는 방법. 데스크톱 앱을 사용하면 비교 데이터가 외부로 전송되지 않습니다!
데스크톱 앱 받기
JUCE CMake changes
생성일
5년 전
비교 결과 만료 없음
초기화
내보내기
공유
설명
3 삭제
행
총
삭제
글자
총
삭제
이 기능을 계속 사용하려면 업그레이드해 주세요
Diff
checker
Pro
요금제 보기
111 행
복사
2 추가
행
총
추가
글자
총
추가
이 기능을 계속 사용하려면 업그레이드해 주세요
Diff
checker
Pro
요금제 보기
112 행
복사
# Example Audio Plugin CMakeLists.txt
# Example Audio Plugin CMakeLists.txt
# To get started on a new plugin, copy this entire folder (containing this file and C++ sources) to
# To get started on a new plugin, copy this entire folder (containing this file and C++ sources) to
# a convenient location, and then start making modifications.
# a convenient location, and then start making modifications.
# The first line of any CMake project should be a call to `cmake_minimum_required`, which checks
# The first line of any CMake project should be a call to `cmake_minimum_required`, which checks
# that the installed CMake will be able to understand the following CMakeLists, and ensures that
# that the installed CMake will be able to understand the following CMakeLists, and ensures that
# CMake's behaviour is compatible with the named version. This is a standard CMake command, so more
# CMake's behaviour is compatible with the named version. This is a standard CMake command, so more
# information can be found in the CMake docs.
# information can be found in the CMake docs.
cmake_minimum_required(VERSION 3.15)
cmake_minimum_required(VERSION 3.15)
# The top-level CMakeLists.txt file for a project must contain a literal, direct call to the
# The top-level CMakeLists.txt file for a project must contain a literal, direct call to the
# `project()` command. `project()` sets up some helpful variables that describe source/binary
# `project()` command. `project()` sets up some helpful variables that describe source/binary
# directories, and the current project version. This is a standard CMake command.
# directories, and the current project version. This is a standard CMake command.
project(AUDIO_PLUGIN_EXAMPLE VERSION 0.0.1)
project(AUDIO_PLUGIN_EXAMPLE VERSION 0.0.1)
# If you've installed JUCE somehow (via a package manager, or directly using the CMake install
# If you've installed JUCE somehow (via a package manager, or directly using the CMake install
# target), you'll need to tell this project that it depends on the installed copy of JUCE. If you've
# target), you'll need to tell this project that it depends on the installed copy of JUCE. If you've
# included JUCE directly in your source tree (perhaps as a submodule), you'll need to tell CMake to
# included JUCE directly in your source tree (perhaps as a submodule), you'll need to tell CMake to
# include that subdirectory as part of the build.
# include that subdirectory as part of the build.
# find_package(JUCE CONFIG REQUIRED) # If you've installed JUCE to your system
# find_package(JUCE CONFIG REQUIRED) # If you've installed JUCE to your system
# or
# or
복사
복사됨
복사
복사됨
#
add_subdirectory(JUCE) # If you've put JUCE in a subdirectory called JUCE
add_subdirectory(JUCE) # If you've put JUCE in a subdirectory called JUCE
# If you are building a VST2 or AAX plugin, CMake needs to be told where to find these SDKs on your
# If you are building a VST2 or AAX plugin, CMake needs to be told where to find these SDKs on your
# system. This setup should be done before calling `juce_add_plugin`.
# system. This setup should be done before calling `juce_add_plugin`.
# juce_set_vst2_sdk_path(...)
# juce_set_vst2_sdk_path(...)
# juce_set_aax_sdk_path(...)
# juce_set_aax_sdk_path(...)
# `juce_add_plugin` adds a static library target with the name passed as the first argument
# `juce_add_plugin` adds a static library target with the name passed as the first argument
# (AudioPluginExample here). This target is a normal CMake target, but has a lot of extra properties set
# (AudioPluginExample here). This target is a normal CMake target, but has a lot of extra properties set
# up by default. As well as this shared code static library, this function adds targets for each of
# up by default. As well as this shared code static library, this function adds targets for each of
# the formats specified by the FORMATS arguments. This function accepts many optional arguments.
# the formats specified by the FORMATS arguments. This function accepts many optional arguments.
# Check the readme at `docs/CMake API.md` in the JUCE repo for the full list.
# Check the readme at `docs/CMake API.md` in the JUCE repo for the full list.
juce_add_plugin(AudioPluginExample
juce_add_plugin(AudioPluginExample
# VERSION ... # Set this if the plugin version is different to the project version
# VERSION ... # Set this if the plugin version is different to the project version
# ICON_BIG ... # ICON_* arguments specify a path to an image file to use as an icon for the Standalone
# ICON_BIG ... # ICON_* arguments specify a path to an image file to use as an icon for the Standalone
# ICON_SMALL ...
# ICON_SMALL ...
# COMPANY_NAME ... # Specify the name of the plugin's author
# COMPANY_NAME ... # Specify the name of the plugin's author
# IS_SYNTH TRUE/FALSE # Is this a synth or an effect?
# IS_SYNTH TRUE/FALSE # Is this a synth or an effect?
# NEEDS_MIDI_INPUT TRUE/FALSE # Does the plugin need midi input?
# NEEDS_MIDI_INPUT TRUE/FALSE # Does the plugin need midi input?
# NEEDS_MIDI_OUTPUT TRUE/FALSE # Does the plugin need midi output?
# NEEDS_MIDI_OUTPUT TRUE/FALSE # Does the plugin need midi output?
# IS_MIDI_EFFECT TRUE/FALSE # Is this plugin a MIDI effect?
# IS_MIDI_EFFECT TRUE/FALSE # Is this plugin a MIDI effect?
# EDITOR_WANTS_KEYBOARD_FOCUS TRUE/FALSE # Does the editor need keyboard focus?
# EDITOR_WANTS_KEYBOARD_FOCUS TRUE/FALSE # Does the editor need keyboard focus?
# COPY_PLUGIN_AFTER_BUILD TRUE/FALSE # Should the plugin be installed to a default location after building?
# COPY_PLUGIN_AFTER_BUILD TRUE/FALSE # Should the plugin be installed to a default location after building?
PLUGIN_MANUFACTURER_CODE Juce # A four-character manufacturer id with at least one upper-case character
PLUGIN_MANUFACTURER_CODE Juce # A four-character manufacturer id with at least one upper-case character
PLUGIN_CODE Dem0 # A unique four-character plugin id with exactly one upper-case character
PLUGIN_CODE Dem0 # A unique four-character plugin id with exactly one upper-case character
# GarageBand 10.3 requires the first letter to be upper-case, and the remaining letters to be lower-case
# GarageBand 10.3 requires the first letter to be upper-case, and the remaining letters to be lower-case
복사
복사됨
복사
복사됨
FORMATS
AU
VST3 Standalone
# The formats to build. Other valid formats are: AAX Unity VST AU AUv3
FORMATS
VST3 Standalone
# The formats to build. Other valid formats are: AAX Unity VST AU AUv3
PRODUCT_NAME "Audio Plugin Example") # The name of the final executable, which can differ from the target name
PRODUCT_NAME "Audio Plugin Example") # The name of the final executable, which can differ from the target name
# `juce_generate_juce_header` will create a JuceHeader.h for a given target, which will be generated
# `juce_generate_juce_header` will create a JuceHeader.h for a given target, which will be generated
# into your build tree. This should be included with `#include <JuceHeader.h>`. The include path for
# into your build tree. This should be included with `#include <JuceHeader.h>`. The include path for
# this header will be automatically added to the target. The main function of the JuceHeader is to
# this header will be automatically added to the target. The main function of the JuceHeader is to
# include all your JUCE module headers; if you're happy to include module headers directly, you
# include all your JUCE module headers; if you're happy to include module headers directly, you
# probably don't need to call this.
# probably don't need to call this.
복사
복사됨
복사
복사됨
#
juce_generate_juce_header(AudioPluginExample)
juce_generate_juce_header(AudioPluginExample)
# `target_sources` adds source files to a target. We pass the target that needs the sources as the
# `target_sources` adds source files to a target. We pass the target that needs the sources as the
# first argument, then a visibility parameter for the sources which should normally be PRIVATE.
# first argument, then a visibility parameter for the sources which should normally be PRIVATE.
# Finally, we supply a list of source files that will be built into the target. This is a standard
# Finally, we supply a list of source files that will be built into the target. This is a standard
# CMake command.
# CMake command.
target_sources(AudioPluginExample
target_sources(AudioPluginExample
PRIVATE
PRIVATE
PluginEditor.cpp
PluginEditor.cpp
PluginProcessor.cpp)
PluginProcessor.cpp)
# `target_compile_definitions` adds some preprocessor definitions to our target. In a Projucer
# `target_compile_definitions` adds some preprocessor definitions to our target. In a Projucer
# project, these might be passed in the 'Preprocessor Definitions' field. JUCE modules also make use
# project, these might be passed in the 'Preprocessor Definitions' field. JUCE modules also make use
# of compile definitions to switch certain features on/off, so if there's a particular feature you
# of compile definitions to switch certain features on/off, so if there's a particular feature you
# need that's not on by default, check the module header for the correct flag to set here. These
# need that's not on by default, check the module header for the correct flag to set here. These
# definitions will be visible both to your code, and also the JUCE module code, so for new
# definitions will be visible both to your code, and also the JUCE module code, so for new
# definitions, pick unique names that are unlikely to collide! This is a standard CMake command.
# definitions, pick unique names that are unlikely to collide! This is a standard CMake command.
target_compile_definitions(AudioPluginExample
target_compile_definitions(AudioPluginExample
PUBLIC
PUBLIC
# JUCE_WEB_BROWSER and JUCE_USE_CURL would be on by default, but you might not need them.
# JUCE_WEB_BROWSER and JUCE_USE_CURL would be on by default, but you might not need them.
JUCE_WEB_BROWSER=0 # If you remove this, add `NEEDS_WEB_BROWSER TRUE` to the `juce_add_plugin` call
JUCE_WEB_BROWSER=0 # If you remove this, add `NEEDS_WEB_BROWSER TRUE` to the `juce_add_plugin` call
JUCE_USE_CURL=0 # If you remove this, add `NEEDS_CURL TRUE` to the `juce_add_plugin` call
JUCE_USE_CURL=0 # If you remove this, add `NEEDS_CURL TRUE` to the `juce_add_plugin` call
JUCE_VST3_CAN_REPLACE_VST2=0)
JUCE_VST3_CAN_REPLACE_VST2=0)
# If your target needs extra binary assets, you can add them here. The first argument is the name of
# If your target needs extra binary assets, you can add them here. The first argument is the name of
# a new static library target that will include all the binary resources. There is an optional
# a new static library target that will include all the binary resources. There is an optional
# `NAMESPACE` argument that can specify the namespace of the generated binary data class. Finally,
# `NAMESPACE` argument that can specify the namespace of the generated binary data class. Finally,
# the SOURCES argument should be followed by a list of source files that should be built into the
# the SOURCES argument should be followed by a list of source files that should be built into the
# static library. These source files can be of any kind (wav data, images, fonts, icons etc.).
# static library. These source files can be of any kind (wav data, images, fonts, icons etc.).
# Conversion to binary-data will happen when your target is built.
# Conversion to binary-data will happen when your target is built.
# juce_add_binary_data(AudioPluginData SOURCES ...)
# juce_add_binary_data(AudioPluginData SOURCES ...)
# `target_link_libraries` links libraries and JUCE modules to other libraries or executables. Here,
# `target_link_libraries` links libraries and JUCE modules to other libraries or executables. Here,
# we're linking our executable target to the `juce::juce_audio_utils` module. Inter-module
# we're linking our executable target to the `juce::juce_audio_utils` module. Inter-module
# dependencies are resolved automatically, so `juce_core`, `juce_events` and so on will also be
# dependencies are resolved automatically, so `juce_core`, `juce_events` and so on will also be
# linked automatically. If we'd generated a binary data target above, we would need to link to it
# linked automatically. If we'd generated a binary data target above, we would need to link to it
# here too. This is a standard CMake command.
# here too. This is a standard CMake command.
target_link_libraries(AudioPluginExample
target_link_libraries(AudioPluginExample
PRIVATE
PRIVATE
# AudioPluginData # If we'd created a binary data target, we'd link to it here
# AudioPluginData # If we'd created a binary data target, we'd link to it here
juce::juce_audio_utils
juce::juce_audio_utils
PUBLIC
PUBLIC
juce::juce_recommended_config_flags
juce::juce_recommended_config_flags
juce::juce_recommended_lto_flags
juce::juce_recommended_lto_flags
juce::juce_recommended_warning_flags)
juce::juce_recommended_warning_flags)
복사
복사됨
복사
복사됨
저장된 비교 결과
원본
파일 열기
# Example Audio Plugin CMakeLists.txt # To get started on a new plugin, copy this entire folder (containing this file and C++ sources) to # a convenient location, and then start making modifications. # The first line of any CMake project should be a call to `cmake_minimum_required`, which checks # that the installed CMake will be able to understand the following CMakeLists, and ensures that # CMake's behaviour is compatible with the named version. This is a standard CMake command, so more # information can be found in the CMake docs. cmake_minimum_required(VERSION 3.15) # The top-level CMakeLists.txt file for a project must contain a literal, direct call to the # `project()` command. `project()` sets up some helpful variables that describe source/binary # directories, and the current project version. This is a standard CMake command. project(AUDIO_PLUGIN_EXAMPLE VERSION 0.0.1) # If you've installed JUCE somehow (via a package manager, or directly using the CMake install # target), you'll need to tell this project that it depends on the installed copy of JUCE. If you've # included JUCE directly in your source tree (perhaps as a submodule), you'll need to tell CMake to # include that subdirectory as part of the build. # find_package(JUCE CONFIG REQUIRED) # If you've installed JUCE to your system # or # add_subdirectory(JUCE) # If you've put JUCE in a subdirectory called JUCE # If you are building a VST2 or AAX plugin, CMake needs to be told where to find these SDKs on your # system. This setup should be done before calling `juce_add_plugin`. # juce_set_vst2_sdk_path(...) # juce_set_aax_sdk_path(...) # `juce_add_plugin` adds a static library target with the name passed as the first argument # (AudioPluginExample here). This target is a normal CMake target, but has a lot of extra properties set # up by default. As well as this shared code static library, this function adds targets for each of # the formats specified by the FORMATS arguments. This function accepts many optional arguments. # Check the readme at `docs/CMake API.md` in the JUCE repo for the full list. juce_add_plugin(AudioPluginExample # VERSION ... # Set this if the plugin version is different to the project version # ICON_BIG ... # ICON_* arguments specify a path to an image file to use as an icon for the Standalone # ICON_SMALL ... # COMPANY_NAME ... # Specify the name of the plugin's author # IS_SYNTH TRUE/FALSE # Is this a synth or an effect? # NEEDS_MIDI_INPUT TRUE/FALSE # Does the plugin need midi input? # NEEDS_MIDI_OUTPUT TRUE/FALSE # Does the plugin need midi output? # IS_MIDI_EFFECT TRUE/FALSE # Is this plugin a MIDI effect? # EDITOR_WANTS_KEYBOARD_FOCUS TRUE/FALSE # Does the editor need keyboard focus? # COPY_PLUGIN_AFTER_BUILD TRUE/FALSE # Should the plugin be installed to a default location after building? PLUGIN_MANUFACTURER_CODE Juce # A four-character manufacturer id with at least one upper-case character PLUGIN_CODE Dem0 # A unique four-character plugin id with exactly one upper-case character # GarageBand 10.3 requires the first letter to be upper-case, and the remaining letters to be lower-case FORMATS AU VST3 Standalone # The formats to build. Other valid formats are: AAX Unity VST AU AUv3 PRODUCT_NAME "Audio Plugin Example") # The name of the final executable, which can differ from the target name # `juce_generate_juce_header` will create a JuceHeader.h for a given target, which will be generated # into your build tree. This should be included with `#include <JuceHeader.h>`. The include path for # this header will be automatically added to the target. The main function of the JuceHeader is to # include all your JUCE module headers; if you're happy to include module headers directly, you # probably don't need to call this. # juce_generate_juce_header(AudioPluginExample) # `target_sources` adds source files to a target. We pass the target that needs the sources as the # first argument, then a visibility parameter for the sources which should normally be PRIVATE. # Finally, we supply a list of source files that will be built into the target. This is a standard # CMake command. target_sources(AudioPluginExample PRIVATE PluginEditor.cpp PluginProcessor.cpp) # `target_compile_definitions` adds some preprocessor definitions to our target. In a Projucer # project, these might be passed in the 'Preprocessor Definitions' field. JUCE modules also make use # of compile definitions to switch certain features on/off, so if there's a particular feature you # need that's not on by default, check the module header for the correct flag to set here. These # definitions will be visible both to your code, and also the JUCE module code, so for new # definitions, pick unique names that are unlikely to collide! This is a standard CMake command. target_compile_definitions(AudioPluginExample PUBLIC # JUCE_WEB_BROWSER and JUCE_USE_CURL would be on by default, but you might not need them. JUCE_WEB_BROWSER=0 # If you remove this, add `NEEDS_WEB_BROWSER TRUE` to the `juce_add_plugin` call JUCE_USE_CURL=0 # If you remove this, add `NEEDS_CURL TRUE` to the `juce_add_plugin` call JUCE_VST3_CAN_REPLACE_VST2=0) # If your target needs extra binary assets, you can add them here. The first argument is the name of # a new static library target that will include all the binary resources. There is an optional # `NAMESPACE` argument that can specify the namespace of the generated binary data class. Finally, # the SOURCES argument should be followed by a list of source files that should be built into the # static library. These source files can be of any kind (wav data, images, fonts, icons etc.). # Conversion to binary-data will happen when your target is built. # juce_add_binary_data(AudioPluginData SOURCES ...) # `target_link_libraries` links libraries and JUCE modules to other libraries or executables. Here, # we're linking our executable target to the `juce::juce_audio_utils` module. Inter-module # dependencies are resolved automatically, so `juce_core`, `juce_events` and so on will also be # linked automatically. If we'd generated a binary data target above, we would need to link to it # here too. This is a standard CMake command. target_link_libraries(AudioPluginExample PRIVATE # AudioPluginData # If we'd created a binary data target, we'd link to it here juce::juce_audio_utils PUBLIC juce::juce_recommended_config_flags juce::juce_recommended_lto_flags juce::juce_recommended_warning_flags)
수정본
파일 열기
# Example Audio Plugin CMakeLists.txt # To get started on a new plugin, copy this entire folder (containing this file and C++ sources) to # a convenient location, and then start making modifications. # The first line of any CMake project should be a call to `cmake_minimum_required`, which checks # that the installed CMake will be able to understand the following CMakeLists, and ensures that # CMake's behaviour is compatible with the named version. This is a standard CMake command, so more # information can be found in the CMake docs. cmake_minimum_required(VERSION 3.15) # The top-level CMakeLists.txt file for a project must contain a literal, direct call to the # `project()` command. `project()` sets up some helpful variables that describe source/binary # directories, and the current project version. This is a standard CMake command. project(AUDIO_PLUGIN_EXAMPLE VERSION 0.0.1) # If you've installed JUCE somehow (via a package manager, or directly using the CMake install # target), you'll need to tell this project that it depends on the installed copy of JUCE. If you've # included JUCE directly in your source tree (perhaps as a submodule), you'll need to tell CMake to # include that subdirectory as part of the build. # find_package(JUCE CONFIG REQUIRED) # If you've installed JUCE to your system # or add_subdirectory(JUCE) # If you've put JUCE in a subdirectory called JUCE # If you are building a VST2 or AAX plugin, CMake needs to be told where to find these SDKs on your # system. This setup should be done before calling `juce_add_plugin`. # juce_set_vst2_sdk_path(...) # juce_set_aax_sdk_path(...) # `juce_add_plugin` adds a static library target with the name passed as the first argument # (AudioPluginExample here). This target is a normal CMake target, but has a lot of extra properties set # up by default. As well as this shared code static library, this function adds targets for each of # the formats specified by the FORMATS arguments. This function accepts many optional arguments. # Check the readme at `docs/CMake API.md` in the JUCE repo for the full list. juce_add_plugin(AudioPluginExample # VERSION ... # Set this if the plugin version is different to the project version # ICON_BIG ... # ICON_* arguments specify a path to an image file to use as an icon for the Standalone # ICON_SMALL ... # COMPANY_NAME ... # Specify the name of the plugin's author # IS_SYNTH TRUE/FALSE # Is this a synth or an effect? # NEEDS_MIDI_INPUT TRUE/FALSE # Does the plugin need midi input? # NEEDS_MIDI_OUTPUT TRUE/FALSE # Does the plugin need midi output? # IS_MIDI_EFFECT TRUE/FALSE # Is this plugin a MIDI effect? # EDITOR_WANTS_KEYBOARD_FOCUS TRUE/FALSE # Does the editor need keyboard focus? # COPY_PLUGIN_AFTER_BUILD TRUE/FALSE # Should the plugin be installed to a default location after building? PLUGIN_MANUFACTURER_CODE Juce # A four-character manufacturer id with at least one upper-case character PLUGIN_CODE Dem0 # A unique four-character plugin id with exactly one upper-case character # GarageBand 10.3 requires the first letter to be upper-case, and the remaining letters to be lower-case FORMATS VST3 Standalone # The formats to build. Other valid formats are: AAX Unity VST AU AUv3 PRODUCT_NAME "Audio Plugin Example") # The name of the final executable, which can differ from the target name # `juce_generate_juce_header` will create a JuceHeader.h for a given target, which will be generated # into your build tree. This should be included with `#include <JuceHeader.h>`. The include path for # this header will be automatically added to the target. The main function of the JuceHeader is to # include all your JUCE module headers; if you're happy to include module headers directly, you # probably don't need to call this. juce_generate_juce_header(AudioPluginExample) # `target_sources` adds source files to a target. We pass the target that needs the sources as the # first argument, then a visibility parameter for the sources which should normally be PRIVATE. # Finally, we supply a list of source files that will be built into the target. This is a standard # CMake command. target_sources(AudioPluginExample PRIVATE PluginEditor.cpp PluginProcessor.cpp) # `target_compile_definitions` adds some preprocessor definitions to our target. In a Projucer # project, these might be passed in the 'Preprocessor Definitions' field. JUCE modules also make use # of compile definitions to switch certain features on/off, so if there's a particular feature you # need that's not on by default, check the module header for the correct flag to set here. These # definitions will be visible both to your code, and also the JUCE module code, so for new # definitions, pick unique names that are unlikely to collide! This is a standard CMake command. target_compile_definitions(AudioPluginExample PUBLIC # JUCE_WEB_BROWSER and JUCE_USE_CURL would be on by default, but you might not need them. JUCE_WEB_BROWSER=0 # If you remove this, add `NEEDS_WEB_BROWSER TRUE` to the `juce_add_plugin` call JUCE_USE_CURL=0 # If you remove this, add `NEEDS_CURL TRUE` to the `juce_add_plugin` call JUCE_VST3_CAN_REPLACE_VST2=0) # If your target needs extra binary assets, you can add them here. The first argument is the name of # a new static library target that will include all the binary resources. There is an optional # `NAMESPACE` argument that can specify the namespace of the generated binary data class. Finally, # the SOURCES argument should be followed by a list of source files that should be built into the # static library. These source files can be of any kind (wav data, images, fonts, icons etc.). # Conversion to binary-data will happen when your target is built. # juce_add_binary_data(AudioPluginData SOURCES ...) # `target_link_libraries` links libraries and JUCE modules to other libraries or executables. Here, # we're linking our executable target to the `juce::juce_audio_utils` module. Inter-module # dependencies are resolved automatically, so `juce_core`, `juce_events` and so on will also be # linked automatically. If we'd generated a binary data target above, we would need to link to it # here too. This is a standard CMake command. target_link_libraries(AudioPluginExample PRIVATE # AudioPluginData # If we'd created a binary data target, we'd link to it here juce::juce_audio_utils PUBLIC juce::juce_recommended_config_flags juce::juce_recommended_lto_flags juce::juce_recommended_warning_flags)
비교하기