Skip to content

Commit d713bc6

Browse files
committed
updated CMake and cosmetic change to the readme headings
1 parent 9376ba4 commit d713bc6

File tree

3 files changed

+31
-11
lines changed

3 files changed

+31
-11
lines changed

CMakeLists.txt

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,34 @@
1+
set(FILENAME "OfflineBufferProcesses.cpp") #specify the .cpp file here
12
cmake_minimum_required (VERSION 2.8)
2-
set(PROJECT "OfflineBufferProcesses")
3+
get_filename_component(PROJECT ${FILENAME} NAME_WE) #automatically sets project name from the filename
4+
# set(PROJECT "my_name") #alternatively set project name manually
5+
message(STATUS "Project name is ${PROJECT}")
36
project (${PROJECT})
47

58
include_directories(${SC_PATH}/include/plugin_interface)
69
include_directories(${SC_PATH}/include/common)
710
include_directories(${SC_PATH}/common)
811

9-
1012
set(CMAKE_SHARED_MODULE_PREFIX "")
1113
if(APPLE OR WIN32)
1214
set(CMAKE_SHARED_MODULE_SUFFIX ".scx")
1315
endif()
1416

17+
option(SUPERNOVA "Build plugins for supernova" OFF)
18+
if (SUPERNOVA)
19+
include_directories(${SC_PATH}/external_libraries/nova-tt)
20+
# actually just boost.atomic
21+
include_directories(${SC_PATH}/external_libraries/boost)
22+
include_directories(${SC_PATH}/external_libraries/boost_lockfree)
23+
include_directories(${SC_PATH}/external_libraries/boost-lockfree)
24+
endif()
25+
1526
option(CPP11 "Build with c++11." ON)
1627

28+
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
29+
set(CMAKE_COMPILER_IS_CLANG 1)
30+
endif()
31+
1732
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG)
1833
add_definitions(-fvisibility=hidden)
1934

@@ -66,4 +81,9 @@ if(MINGW)
6681
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mstackrealign")
6782
endif()
6883

69-
add_library(${PROJECT} MODULE OfflineBufferProcesses.cpp)
84+
add_library(${PROJECT} MODULE ${FILENAME})
85+
if(SUPERNOVA)
86+
add_library(${PROJECT}_supernova MODULE ${FILENAME})
87+
set_property(TARGET ${PROJECT}_supernova
88+
PROPERTY COMPILE_DEFINITIONS SUPERNOVA)
89+
endif()

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
### OfflineBufferProcesses, a few utilities to manipulate buffers on the server's non-real-time thread
22
v.1 by Pierre Alexandre Tremblay (2018)
33

4-
###### Description
4+
#### Description
55
This is a set of offline buffer processes for SuperCollider (https://supercollider.github.io/) augmenting the Buffer class with new instance methods. This project, especially the first few commits of the repository, can be used to understand how to write such process in C.
66

77
This was made possible thanks to the FluCoMa project (http://www.flucoma.org/) funded by the European Research Council (https://erc.europa.eu/) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 725899)
88

9-
###### How to Install from binaries (SC 3.8 or 3.9 on Mac required)
9+
#### How to Install from binaries (SC 3.8 or 3.9 on Mac required)
1010
Download the package and read the text file.
1111

12-
###### How to build from the source code
12+
#### How to build from the source code
1313
These instructions are modified from the amazingly streamlined UGen writing tutorial by snappizz (https://github.com/supercollider/example-plugins)
1414
1. Download the SuperCollider source
1515
2. Create build directory
@@ -21,4 +21,4 @@ These instructions are modified from the amazingly streamlined UGen writing tuto
2121
5. type `make`, it should compile.
2222
6. once it is done, install the Ugen and its Declaration by moving them in the `release-packaging/OfflineBufferProcesses/classes` and 'release-packaging/OfflineBufferProcesses/plugins' respectively, then move the whole `OfflineBufferProcesses` folder in your `Extensions` folder.
2323

24-
###### Enjoy! Comments, suggestions and bug reports are welcome.
24+
#### Enjoy! Comments, suggestions and bug reports are welcome.
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
### OfflineBufferProcesses, a few utilities to manipulate buffers on the server's non-real-time thread
22
v.1 by Pierre Alexandre Tremblay (2018)
33

4-
###### Description
4+
#### Description
55
This is a set of offline buffer processes for SuperCollider (https://supercollider.github.io/) augmenting the Buffer class with new instance methods. This project, especially the first few commits of the repository, can be used to understand how to write such process in C.
66

77
This was made possible thanks to the FluCoMa project (http://www.flucoma.org/) funded by the European Research Council (https://erc.europa.eu/) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 725899)
88

9-
###### How to Install from binaries (SC 3.8 or 3.9 on Mac required)
9+
#### How to Install from binaries (SC 3.8 or 3.9 on Mac required)
1010
1. If you read this, you must have downloaded the binary package. If not, download the right one for your SC version from the GitHub repository.
1111
2. Drag the full `OfflineBufferProcesses` folder, with its 3 subfolders (classes, HelpSource, plugins) in your `Extensions` folder. If you don't know what this is, please read the SuperCollider instructions here: (http://doc.sccode.org/Guides/UsingExtensions.html)
1212
3. Enjoy!
1313

14-
###### How to get started
15-
The fact that this package extends the native Buffer class means that the different instance methods will be documented in the Buffer helpfile. There is also a Guide entitled 'OfflineBufferProcesses' which explains other methods to do similar tasks.
14+
#### How to get started
15+
The fact that this package extends the native Buffer class means that the different instance methods will be documented in the Buffer helpfile. There is also a Guide entitled 'OfflineBufferProcesses' which explains and compares other methods to do similar tasks.
1616

1717
Comments, suggestions and bug reports are welcome.

0 commit comments

Comments
 (0)