Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Turn off clap with older cmakes #5862

Closed
tank-trax opened this issue Feb 6, 2022 · 15 comments · Fixed by #5863
Closed

Turn off clap with older cmakes #5862

tank-trax opened this issue Feb 6, 2022 · 15 comments · Fixed by #5863
Labels
Bug Report Item submitted using the Bug Report template Infrastructure Issues related to repository, CI/CD, installers, etc.
Milestone

Comments

@tank-trax
Copy link
Collaborator

commit 5f265e

-- Creating CLAP surge-fx_CLAP from surge-fx
CMake Error at libs/clap-juce-extensions/CMakeLists.txt:51 (get_property):
  get_property could not find TARGET clap_juce_sources.  Perhaps it has not
  yet been created.
Call Stack (most recent call first):
  src/surge-fx/CMakeLists.txt:65 (clap_juce_extensions_plugin)


-- Creating CLAP surge-xt_CLAP from surge-xt
CMake Error at libs/clap-juce-extensions/CMakeLists.txt:51 (get_property):
  get_property could not find TARGET clap_juce_sources.  Perhaps it has not
  yet been created.
Call Stack (most recent call first):
  src/surge-xt/CMakeLists.txt:53 (clap_juce_extensions_plugin)


CMake Error at src/surge-xt/CMakeLists.txt:55 (target_sources):
  Cannot specify sources for target "surge-xt_CLAP" which is not built by
  this project.


-- Including JUCE VST3 host-side context menu support...
-- Including JUCE VST3 client extensions...
-- Validate me! Please!
-- Creating pluginval target for plugin: Surge XT.vst3
-- Creating pluginval target for plugin: .vst3
-- Adding download-extra-content target from https://github.com/surge-synthesizer/surge-extra-content.git
-- Configuring incomplete, errors occurred!
See also "/home/studio/dev/git/surge/build/CMakeFiles/CMakeOutput.log".
See also "/home/studio/dev/git/surge/build/CMakeFiles/CMakeError.log".

CMakeError.log
CMakeOutput.log

@tank-trax tank-trax added the Bug Report Item submitted using the Bug Report template label Feb 6, 2022
@baconpaul
Copy link
Collaborator

did you submodule update before you built?

@tank-trax tank-trax changed the title Build Error on L:inux Build Error on Linux Feb 6, 2022
@tank-trax
Copy link
Collaborator Author

tank-trax commented Feb 6, 2022

many times, will git clone anew

@baconpaul
Copy link
Collaborator

OK can you try a fresh clone first?
The build you are running runs fine on ubuntu 20 in a fresh clone (the pipelines do it!) and that error would come from something in your submodules being corrupted.

Also a git submodule sync may help

but if you cd libs/clap-juce-extensions what does git log say? and what happens if you then cd into clap-libs/clap and do the git log?

@tank-trax
Copy link
Collaborator Author

new clone, same error

-- Creating CLAP surge-fx_CLAP from surge-fx
CMake Error at libs/clap-juce-extensions/CMakeLists.txt:51 (get_property):
  get_property could not find TARGET clap_juce_sources.  Perhaps it has not
  yet been created.
Call Stack (most recent call first):
  src/surge-fx/CMakeLists.txt:65 (clap_juce_extensions_plugin)

etc...

@tank-trax
Copy link
Collaborator Author

cd libs/clap-juce-extensions 
git log
commit 66ed91
cd clap-libs/clap
git log
commit da5c07

@baconpaul
Copy link
Collaborator

wow OK and just for completeness, what are the build commands you are using?

I'll take a look.

@tank-trax
Copy link
Collaborator Author

apologies... here's the whole thing...

cmake -Bbuild                          
-- It's Surge XT, folks! Version is 1.1.0
-- CMAKE_BUILD_TYPE is Release
-- CMake version is 3.18.4
-- Compiler version is 10.2.1
-- Targeting 64-bit configuration
-- Setting -no-pie on EXE flags; use SURGE_SKIP_PIE_CHANGE=TRUE to avoid
-- Holding off on AVX support. See #4479 for the strategy
-- Using JUCE from /home/studio/dev/git/surge/libs/JUCE
-- Configuring juceaide
-- Building juceaide
-- Exporting juceaide
CMake Error at libs/clap-juce-extensions/clap-libs/clap-helpers/CMakeLists.txt:8 (set_target_properties):
  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
  property "POSITION_INDEPENDENT_CODE" is not allowed.


CMake Error at libs/clap-juce-extensions/clap-libs/clap-helpers/CMakeLists.txt:8 (set_target_properties):
  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
  property "CXX_STANDARD" is not allowed.


CMake Error at libs/clap-juce-extensions/CMakeLists.txt:30 (add_library):
  add_library INTERFACE library requires no source arguments.


CMake Error at libs/clap-juce-extensions/CMakeLists.txt:34 (target_include_directories):
  Cannot specify include directories for target "clap_juce_sources" which is
  not built by this project.


-- Building Surge XT using the following JUCE wrappers: VST3;Standalone
-- Module support is disabled.
-- Version: 8.0.1
-- Build type: Release
-- CXX_STANDARD: 17
-- Required features: cxx_variadic_templates
-- Checking processor clipping capabilities...
-- Checking processor clipping capabilities... none
-- Including local sqlite
-- Checking LJ_TARGET_X64 /home/studio/dev/git/surge/libs/LuaJitLib/LuaJIT;/home/studio/dev/git/surge/libs/LuaJitLib/LuaJIT/src;/home/studio/dev/git/surge/build/libs/LuaJitLib
-- LuaJIT target: x64
-- LuaJIT target: x64
-- filesystem: Using ghc::filesystem from "filesystem/ghc-filesystem.h"
-- Creating fs import via '/home/studio/dev/git/surge/build/libs/sst/sst-plugininfra/libs/filesystem/include/filesystem/import.h'
-- Creating CLAP surge-fx_CLAP from surge-fx
CMake Error at libs/clap-juce-extensions/CMakeLists.txt:51 (get_property):
  get_property could not find TARGET clap_juce_sources.  Perhaps it has not
  yet been created.
Call Stack (most recent call first):
  src/surge-fx/CMakeLists.txt:65 (clap_juce_extensions_plugin)


-- Creating CLAP surge-xt_CLAP from surge-xt
CMake Error at libs/clap-juce-extensions/CMakeLists.txt:51 (get_property):
  get_property could not find TARGET clap_juce_sources.  Perhaps it has not
  yet been created.
Call Stack (most recent call first):
  src/surge-xt/CMakeLists.txt:53 (clap_juce_extensions_plugin)


CMake Error at src/surge-xt/CMakeLists.txt:55 (target_sources):
  Cannot specify sources for target "surge-xt_CLAP" which is not built by
  this project.


-- Including JUCE VST3 host-side context menu support...
-- Including JUCE VST3 client extensions...
-- Validate me! Please!
-- Creating pluginval target for plugin: Surge XT.vst3
-- Creating pluginval target for plugin: .vst3
-- Adding download-extra-content target from https://github.com/surge-synthesizer/surge-extra-content.git
-- Configuring incomplete, errors occurred!
See also "/home/studio/dev/git/surge/build/CMakeFiles/CMakeOutput.log".
See also "/home/studio/dev/git/surge/build/CMakeFiles/CMakeError.log".

@baconpaul
Copy link
Collaborator

huh ok i just did that at head and had no problem
i'm on cmake 3.22 wonder if thats the problem (but still we would need to fix it)

@baconpaul
Copy link
Collaborator

yeah this is almost def a cmake 18 vs 22 thing. i will try and downgrade and fix it. but thos property interface errors (which are the real cause) aren't even in my build.

@baconpaul
Copy link
Collaborator

OK do me a favor

find these lines in libs/clap-juce-extensions/clap-libs/clap-helpers/CMakeLists.txt


add_library(clap-helpers INTERFACE)
set_target_properties(clap-helpers PROPERTIES
    POSITION_INDEPENDENT_CODE ON
    CXX_STANDARD 11)
target_include_directories(clap-helpers INTERFACE include)

and change them to be


add_library(clap-helpers INTERFACE)
target_include_directories(clap-helpers INTERFACE include)

that is remove the property set altogether. Then try a clean build.

If that works I can get it fixed up.

@baconpaul
Copy link
Collaborator

(probably)

@baconpaul
Copy link
Collaborator

One solution here, by the way, mnight just be to require cmake 3.22 for surge

@baconpaul
Copy link
Collaborator

actually @tank-trax can you try pulling a more recent cmake and see if htat fixes it? the restructuring is rather painful if that's just the one difference.

@tank-trax
Copy link
Collaborator Author

it worked using cmake-3.22.2

@baconpaul
Copy link
Collaborator

Cool. I’m gonna reopen this issue and hijack it to remember to disable clap with cm < 322

@baconpaul baconpaul reopened this Feb 6, 2022
@baconpaul baconpaul changed the title Build Error on Linux Turn off clap with older cmakes Feb 6, 2022
@mkruselj mkruselj added the Infrastructure Issues related to repository, CI/CD, installers, etc. label Feb 6, 2022
@mkruselj mkruselj added this to the Surge XT 1.1 milestone Feb 6, 2022
baconpaul added a commit to baconpaul/surge that referenced this issue Feb 6, 2022
- Use the correct PRODUCT_NAME in the pluginval. Closes surge-synthesizer#5834
- Conditionally deactivate CLAP builds for cmake versions
  less than 3.21. Closes surge-synthesizer#5862
baconpaul added a commit that referenced this issue Feb 6, 2022
- Use the correct PRODUCT_NAME in the pluginval. Closes #5834
- Conditionally deactivate CLAP builds for cmake versions
  less than 3.21. Closes #5862
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Report Item submitted using the Bug Report template Infrastructure Issues related to repository, CI/CD, installers, etc.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants