Compare commits

...

10 Commits

Author SHA1 Message Date
Nedko Arnaudov e3323c7889 fix LADISH support
Menu items are useful in LADISH sessions,
when Carla not ran in NSM mode
2023-06-01 20:37:08 +03:00
falkTX fa3253b01f
cmake: set IMPORT_PREFIX for libs, needed for msvc builds
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 23:51:14 +02:00
falkTX 1c759b6035
cmake: see if SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX} does anything
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 23:24:21 +02:00
falkTX 78500f0834
cmake CI tweaks
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 23:17:30 +02:00
falkTX 6d82c0b71b
cmake: fix CI env, force lib prefix (needed under windows)
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 22:56:34 +02:00
falkTX 4816fedf84
Run cmake install for CI checks
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 22:41:14 +02:00
falkTX 67b6b9b207
cmake: be verbose on the location of installed files
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 22:24:54 +02:00
falkTX f11c6785a3
Fix cmake install order
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 06:53:10 +02:00
falkTX d089386089
fix make install
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 02:26:54 +02:00
falkTX 92dcc09c4a
cmake: install code headers and pkgconfig file
Signed-off-by: falkTX <falktx@falktx.com>
2023-05-31 02:20:20 +02:00
5 changed files with 127 additions and 11 deletions

View File

@ -9,8 +9,7 @@ on:
- '*'
env:
DEBIAN_FRONTEND: noninteractive
HOMEBREW_NO_AUTO_UPDATE: 1
DESTDIR: ${{ github.workspace }}/build/tmp
jobs:
macos-11:
@ -24,6 +23,8 @@ jobs:
run: cmake -S cmake -B build
- name: build
run: cmake --build build -j $(sysctl -n hw.logicalcpu)
- name: install
run: cmake --install build --verbose
mingw32-cross:
runs-on: ubuntu-22.04
@ -45,10 +46,12 @@ jobs:
-DCMAKE_SYSTEM_PROCESSOR=i686 \
-DCMAKE_C_COMPILER=i686-w64-mingw32-gcc \
-DCMAKE_CXX_COMPILER=i686-w64-mingw32-g++ \
-DCMAKE_AR=$(which i686-w64-mingw32-ar) \
-DCMAKE_RANLIB=$(which i686-w64-mingw32-ranlib)
-DCMAKE_RANLIB=i686-w64-mingw32-ranlib \
-DCMAKE_AR=$(which i686-w64-mingw32-ar)
- name: build
run: cmake --build build -j $(nproc)
- name: install
run: cmake --install build --verbose
mingw64-cross:
runs-on: ubuntu-22.04
@ -70,10 +73,12 @@ jobs:
-DCMAKE_SYSTEM_PROCESSOR=x86_64 \
-DCMAKE_C_COMPILER=x86_64-w64-mingw32-gcc \
-DCMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ \
-DCMAKE_AR=$(which x86_64-w64-mingw32-ar) \
-DCMAKE_RANLIB=$(which x86_64-w64-mingw32-ranlib)
-DCMAKE_RANLIB=x86_64-w64-mingw32-ranlib \
-DCMAKE_AR=$(which x86_64-w64-mingw32-ar)
- name: build
run: cmake --build build -j $(nproc)
- name: install
run: cmake --install build --verbose
ubuntu-20_04:
runs-on: ubuntu-20.04
@ -87,6 +92,8 @@ jobs:
run: cmake -S cmake -B build
- name: build
run: cmake --build build -j $(nproc)
- name: install
run: cmake --install build --verbose
ubuntu-22_04:
runs-on: ubuntu-22.04
@ -100,6 +107,8 @@ jobs:
run: cmake -S cmake -B build
- name: build
run: cmake --build build -j $(nproc)
- name: install
run: cmake --install build --verbose
windows:
runs-on: windows-latest
@ -109,3 +118,7 @@ jobs:
run: cmake -S cmake -B build
- name: build
run: cmake --build build
# FIXME fails with error
# https://github.com/falkTX/Carla/actions/runs/5137608233/jobs/9245932221
#- name: install
#run: cmake --install build --verbose

View File

@ -22,7 +22,7 @@ else
MODULEDIR := $(CURDIR)/build/modules/Release
endif
# see also source/common/__init__.py and source/includes/CarlaDefines.h
# see also cmake/CMakeLists.txt, source/common/__init__.py and source/includes/CarlaDefines.h
VERSION := 2.6.0-alpha1
-include Makefile.user.mk
@ -456,6 +456,7 @@ else
endif
install -d $(DESTDIR)$(LIBDIR)/pkgconfig
install -d $(DESTDIR)$(INCLUDEDIR)/carla/includes
install -d $(DESTDIR)$(INCLUDEDIR)/carla/utils
ifeq ($(LINUX),true)
ifeq ($(HAVE_JACK),true)
ifeq ($(JACKBRIDGE_DIRECT),true)

View File

@ -1,6 +1,8 @@
cmake_minimum_required(VERSION 3.15)
project(carla)
set(PROJECT_VERSION 2.6.0-alpha1)
set(CMAKE_POLICY_DEFAULT_CMP0025 NEW)
set(CMAKE_POLICY_DEFAULT_CMP0063 NEW)
set(CMAKE_POLICY_DEFAULT_CMP0069 NEW)
@ -43,6 +45,8 @@ set(CARLA_USE_OSC ${CARLA_USE_OSC_DEFAULT} CACHE BOOL "Enable OSC")
#######################################################################################################################
# required dependencies
include(GNUInstallDirs)
find_package(Threads REQUIRED)
if(NOT (APPLE OR HAIKU OR WIN32))
@ -677,6 +681,10 @@ add_executable(carla-bridge-native)
set_common_target_properties(carla-bridge-native)
install(TARGETS carla-bridge-native
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
target_compile_definitions(carla-bridge-native
PRIVATE
BUILD_BRIDGE
@ -760,6 +768,10 @@ add_executable(carla-discovery-native)
set_common_target_properties(carla-discovery-native)
install(TARGETS carla-discovery-native
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
target_include_directories(carla-discovery-native
PRIVATE
../source/backend
@ -790,9 +802,17 @@ add_library(carla::standalone ALIAS carla-standalone)
set_common_target_properties(carla-standalone)
install(TARGETS carla-standalone
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/carla
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/carla
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
set_target_properties(carla-standalone
PROPERTIES
OUTPUT_NAME carla_standalone2
IMPORT_PREFIX lib
PREFIX lib
)
target_compile_definitions(carla-standalone
@ -878,9 +898,17 @@ add_library(carla::utils ALIAS carla-utils)
set_common_target_properties(carla-utils)
set_target_properties(carla-standalone
install(TARGETS carla-utils
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/carla
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/carla
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
set_target_properties(carla-utils
PROPERTIES
OUTPUT_NAME carla_utils
IMPORT_PREFIX lib
PREFIX lib
)
target_include_directories(carla-utils
@ -935,3 +963,66 @@ if(APPLE)
endif()
#######################################################################################################################
# install code headers
add_library(carla-headers-backend INTERFACE)
add_library(carla-headers-includes INTERFACE)
add_library(carla-headers-utils INTERFACE)
set_property(TARGET carla-headers-backend
PROPERTY PUBLIC_HEADER
../source/backend/CarlaBackend.h
../source/backend/CarlaHost.h
../source/backend/CarlaUtils.h
../source/backend/CarlaEngine.hpp
../source/backend/CarlaPlugin.hpp
../source/backend/CarlaPluginPtr.hpp
)
set_property(TARGET carla-headers-includes
PROPERTY PUBLIC_HEADER
../source/includes/CarlaDefines.h
../source/includes/CarlaMIDI.h
../source/includes/CarlaNative.h
../source/includes/CarlaNativePlugin.h
)
set_property(TARGET carla-headers-utils
PROPERTY PUBLIC_HEADER
../source/utils/CarlaBackendUtils.hpp
../source/utils/CarlaBase64Utils.hpp
../source/utils/CarlaBinaryUtils.hpp
../source/utils/CarlaBridgeDefines.hpp
../source/utils/CarlaBridgeUtils.hpp
../source/utils/CarlaMacUtils.hpp
../source/utils/CarlaMathUtils.hpp
../source/utils/CarlaMutex.hpp
../source/utils/CarlaRingBuffer.hpp
../source/utils/CarlaProcessUtils.hpp
../source/utils/CarlaRunner.hpp
../source/utils/CarlaScopeUtils.hpp
../source/utils/CarlaSemUtils.hpp
../source/utils/CarlaSha1Utils.hpp
../source/utils/CarlaShmUtils.hpp
../source/utils/CarlaString.hpp
../source/utils/CarlaThread.hpp
../source/utils/CarlaTimeUtils.hpp
../source/utils/CarlaUtils.hpp
)
install(TARGETS carla-headers-backend PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/carla)
install(TARGETS carla-headers-includes PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/carla/includes)
install(TARGETS carla-headers-utils PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/carla/utils)
#######################################################################################################################
# pkg-config stuff
configure_file(carla-utils.pc.in carla-utils.pc @ONLY)
install(FILES
${CMAKE_CURRENT_BINARY_DIR}/carla-utils.pc
DESTINATION
${CMAKE_INSTALL_LIBDIR}/pkgconfig
)
#######################################################################################################################

9
cmake/carla-utils.pc.in Normal file
View File

@ -0,0 +1,9 @@
prefix=@CMAKE_INSTALL_PREFIX@
libdir=@CMAKE_INSTALL_LIBDIR@
includedir=@CMAKE_INSTALL_INCLUDEDIR@
Name: carla-utils
Version: @PROJECT_VERSION@
Description: Carla Host Utilities
Libs: -L${libdir}/carla -lcarla_utils
Cflags: -I${includedir}/carla -I${includedir}/carla/includes -I${includedir}/carla/utils

View File

@ -165,6 +165,7 @@ class HostWindow(QMainWindow):
self.fPluginDatabaseDialog = None
self.fFavoritePlugins = []
self.fLADISH = False
self.fProjectFilename = ""
self.fIsProjectLoading = False
self.fCurrentlyRemovingAllPlugins = False
@ -205,6 +206,7 @@ class HostWindow(QMainWindow):
elif LADISH_APP_NAME:
self.fClientName = LADISH_APP_NAME
self.fSessionManagerName = "LADISH"
self.fLADISH = True
elif NSM_URL and host.nsmOK:
self.fClientName = "Carla.tmp"
self.fSessionManagerName = "Non Session Manager TMP"
@ -272,7 +274,7 @@ class HostWindow(QMainWindow):
self.ui.act_file_refresh.setEnabled(False)
self.ui.act_file_refresh.setVisible(False)
if self.fSessionManagerName and not self.host.isPlugin:
if self.fSessionManagerName and not self.fLADISH and not self.host.isPlugin:
self.ui.act_file_new.setEnabled(False)
self.ui.act_file_open.setEnabled(False)
@ -1092,7 +1094,7 @@ class HostWindow(QMainWindow):
if not self.host.isPlugin:
self.enableTransport(transportMode != ENGINE_TRANSPORT_MODE_DISABLED)
if self.host.isPlugin or not self.fSessionManagerName:
if self.host.isPlugin or not self.fSessionManagerName or self.fLADISH:
self.ui.act_file_open.setEnabled(True)
self.ui.act_file_save_as.setEnabled(True)
@ -1135,7 +1137,7 @@ class HostWindow(QMainWindow):
self.ui.act_engine_start.setEnabled(True)
self.ui.act_engine_stop.setEnabled(False)
if self.host.isPlugin or not self.fSessionManagerName:
if self.host.isPlugin or not self.fSessionManagerName or self.fLADISH:
self.ui.act_file_open.setEnabled(False)
self.ui.act_file_save_as.setEnabled(False)