Skip to content

Commit adab668

Browse files
authored
Merge branch 'develop' into ffmpeg-writer
2 parents fcf5cc6 + 687a9cc commit adab668

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+1430
-867
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@
66
.project
77
.cproject
88
/.metadata/
9+
tags
910
*~

.gitlab-ci.yml

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,11 @@ linux-builder:
1616
- unzip artifacts.zip
1717
- export LIBOPENSHOT_AUDIO_DIR=$CI_PROJECT_DIR/build/install-x64
1818
- mkdir -p build; cd build;
19-
- mkdir -p install-x64/python;
20-
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR/build/install-x64" -D"CMAKE_BUILD_TYPE:STRING=Release" -D"USE_SYSTEM_JSONCPP=0" ../
19+
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR/build/install-x64" -D"PYTHON_MODULE_PATH=python" -D"RUBY_MODULE_PATH=ruby" -DCMAKE_BUILD_TYPE:STRING=Release -DUSE_SYSTEM_JSONCPP=0 ../
2120
- make
2221
- make install
2322
- make doc
2423
- ~/auto-update-docs "$CI_PROJECT_DIR/build" "$CI_COMMIT_REF_NAME"
25-
- mv install-x64/lib/python3.4/site-packages/*openshot* install-x64/python
2624
- echo -e "CI_PROJECT_NAME:$CI_PROJECT_NAME\nCI_COMMIT_REF_NAME:$CI_COMMIT_REF_NAME\nCI_COMMIT_SHA:$CI_COMMIT_SHA\nCI_JOB_ID:$CI_JOB_ID" > "install-x64/share/$CI_PROJECT_NAME"
2725
- git log $(git describe --tags --abbrev=0 @^)..@ --oneline --pretty=format:"%C(auto,yellow)%h%C(auto,magenta)% %C(auto,blue)%>(12,trunc)%ad %C(auto,green)%<(25,trunc)%aN%C(auto,reset)%s%C(auto,red)% gD% D" --date=short > "install-x64/share/$CI_PROJECT_NAME.log"
2826
when: always
@@ -45,11 +43,9 @@ mac-builder:
4543
- unzip artifacts.zip
4644
- export LIBOPENSHOT_AUDIO_DIR=$CI_PROJECT_DIR/build/install-x64
4745
- mkdir -p build; cd build;
48-
- mkdir -p install-x64/python;
49-
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR/build/install-x64" -DCMAKE_CXX_COMPILER=/usr/local/opt/gcc48/bin/g++-4.8 -DCMAKE_C_COMPILER=/usr/local/opt/gcc48/bin/gcc-4.8 -DCMAKE_PREFIX_PATH=/usr/local/qt5/5.5/clang_64 -DPYTHON_INCLUDE_DIR=/Library/Frameworks/Python.framework/Versions/3.6/include/python3.6m -DPYTHON_LIBRARY=/Library/Frameworks/Python.framework/Versions/3.6/lib/libpython3.6.dylib -DPython_FRAMEWORKS=/Library/Frameworks/Python.framework/ -D"CMAKE_BUILD_TYPE:STRING=Release" -D"CMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk" -D"CMAKE_OSX_DEPLOYMENT_TARGET=10.9" -D"CMAKE_INSTALL_RPATH_USE_LINK_PATH=1" -D"ENABLE_RUBY=0" ../
46+
- cmake -DCMAKE_CXX_FLAGS=-I\ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR/build/install-x64" -DCMAKE_CXX_COMPILER=/usr/local/opt/gcc@8/bin/g++-8 -DCMAKE_C_COMPILER=/usr/local/opt/gcc@8/bin/gcc-8 -DCMAKE_PREFIX_PATH=/usr/local/qt5/5.5/clang_64 -DPYTHON_INCLUDE_DIR=/Library/Frameworks/Python.framework/Versions/3.6/include/python3.6m -DPYTHON_LIBRARY=/Library/Frameworks/Python.framework/Versions/3.6/lib/libpython3.6.dylib -DPYTHON_MODULE_PATH=python -DPython_FRAMEWORKS=/Library/Frameworks/Python.framework/ -D"CMAKE_BUILD_TYPE:STRING=Release" -D"CMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk" -D"CMAKE_OSX_DEPLOYMENT_TARGET=10.9" -D"CMAKE_INSTALL_RPATH_USE_LINK_PATH=1" -D"ENABLE_RUBY=0" ../
5047
- make
5148
- make install
52-
- mv install-x64/lib/python3.6/site-packages/*openshot* install-x64/python
5349
- echo -e "CI_PROJECT_NAME:$CI_PROJECT_NAME\nCI_COMMIT_REF_NAME:$CI_COMMIT_REF_NAME\nCI_COMMIT_SHA:$CI_COMMIT_SHA\nCI_JOB_ID:$CI_JOB_ID" > "install-x64/share/$CI_PROJECT_NAME"
5450
- git log $(git describe --tags --abbrev=0 @^)..@ --oneline --pretty=format:"%C(auto,yellow)%h%C(auto,magenta)% %C(auto,blue)%>(12,trunc)%ad %C(auto,green)%<(25,trunc)%aN%C(auto,reset)%s%C(auto,red)% gD% D" --date=short > "install-x64/share/$CI_PROJECT_NAME.log"
5551
when: always
@@ -73,11 +69,9 @@ windows-builder-x64:
7369
- $env:RESVGDIR = "C:\msys64\usr"
7470
- $env:Path = "C:\msys64\mingw64\bin;C:\msys64\mingw64\lib;C:\msys64\usr\lib\cmake\UnitTest++;C:\msys64\home\jonathan\depot_tools;C:\msys64\usr;C:\msys64\usr\lib;" + $env:Path;
7571
- New-Item -ItemType Directory -Force -Path build
76-
- New-Item -ItemType Directory -Force -Path build\install-x64\python
7772
- cd build
78-
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR\build\install-x64" -G "MSYS Makefiles" -DCMAKE_MAKE_PROGRAM=mingw32-make -D"CMAKE_BUILD_TYPE:STRING=Release" ../
73+
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR\build\install-x64" -D"PYTHON_MODULE_PATH=python" -D"RUBY_MODULE_PATH=ruby" -G "MSYS Makefiles" -DCMAKE_MAKE_PROGRAM=mingw32-make -D"CMAKE_BUILD_TYPE:STRING=Release" ../
7974
- mingw32-make install
80-
- Move-Item -Force -path "install-x64\lib\python3.7\site-packages\*openshot*" -destination "install-x64\python\"
8175
- New-Item -path "install-x64/share/" -Name "$CI_PROJECT_NAME" -Value "CI_PROJECT_NAME:$CI_PROJECT_NAME`nCI_COMMIT_REF_NAME:$CI_COMMIT_REF_NAME`nCI_COMMIT_SHA:$CI_COMMIT_SHA`nCI_JOB_ID:$CI_JOB_ID" -ItemType file -force
8276
- $PREV_GIT_LABEL=(git describe --tags --abbrev=0 '@^')
8377
- git log "$PREV_GIT_LABEL..@" --oneline --pretty=format:"%C(auto,yellow)%h%C(auto,magenta)% %C(auto,blue)%>(12,trunc)%ad %C(auto,green)%<(25,trunc)%aN%C(auto,reset)%s%C(auto,red)% gD% D" --date=short > "install-x64/share/$CI_PROJECT_NAME.log"
@@ -102,11 +96,9 @@ windows-builder-x86:
10296
- $env:RESVGDIR = "C:\msys32\usr"
10397
- $env:Path = "C:\msys32\mingw32\bin;C:\msys32\mingw32\lib;C:\msys32\usr\lib\cmake\UnitTest++;C:\msys32\home\jonathan\depot_tools;C:\msys32\usr;C:\msys32\usr\lib;" + $env:Path;
10498
- New-Item -ItemType Directory -Force -Path build
105-
- New-Item -ItemType Directory -Force -Path build\install-x86\python
10699
- cd build
107-
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR\build\install-x86" -G "MSYS Makefiles" -DCMAKE_MAKE_PROGRAM=mingw32-make -D"CMAKE_BUILD_TYPE:STRING=Release" -D"CMAKE_CXX_FLAGS=-m32" -D"CMAKE_EXE_LINKER_FLAGS=-Wl,--large-address-aware" -D"CMAKE_C_FLAGS=-m32" ../
100+
- cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR\build\install-x86" -D"PYTHON_MODULE_PATH=python" -D"RUBY_MODULE_PATH=ruby" -G "MSYS Makefiles" -DCMAKE_MAKE_PROGRAM=mingw32-make -D"CMAKE_BUILD_TYPE:STRING=Release" -D"CMAKE_CXX_FLAGS=-m32" -D"CMAKE_EXE_LINKER_FLAGS=-Wl,--large-address-aware" -D"CMAKE_C_FLAGS=-m32" ../
108101
- mingw32-make install
109-
- Move-Item -Force -path "install-x86\lib\python3.7\site-packages\*openshot*" -destination "install-x86\python\"
110102
- New-Item -path "install-x86/share/" -Name "$CI_PROJECT_NAME" -Value "CI_PROJECT_NAME:$CI_PROJECT_NAME`nCI_COMMIT_REF_NAME:$CI_COMMIT_REF_NAME`nCI_COMMIT_SHA:$CI_COMMIT_SHA`nCI_JOB_ID:$CI_JOB_ID" -ItemType file -force
111103
- $PREV_GIT_LABEL=(git describe --tags --abbrev=0 '@^')
112104
- git log "$PREV_GIT_LABEL..@" --oneline --pretty=format:"%C(auto,yellow)%h%C(auto,magenta)% %C(auto,blue)%>(12,trunc)%ad %C(auto,green)%<(25,trunc)%aN%C(auto,reset)%s%C(auto,red)% gD% D" --date=short > "install-x86/share/$CI_PROJECT_NAME.log"

.travis.yml

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
language: cpp
22
compiler: gcc
3+
os: linux
4+
dist: xenial
35

46
# This section uses a rather esoteric (and tricky!) feature of YAML,
57
# &aliases and *anchors, to build package lists out of sublists without
@@ -9,18 +11,12 @@ addons:
911
apt:
1012
packages: &p_common # Packages common to all Ubuntu builds
1113
- cmake
12-
- swig
1314
- libopenshot-audio-dev
1415
- libmagick++-dev
1516
- libunittest++-dev
1617
- libzmq3-dev
1718
- qtbase5-dev
1819
- qtmultimedia5-dev
19-
- doxygen
20-
- graphviz
21-
- curl
22-
packages: &ff_common # Common set of FFmpeg packages
23-
- *p_common
2420
- libfdk-aac-dev
2521
- libavcodec-dev
2622
- libavformat-dev
@@ -29,12 +25,19 @@ addons:
2925
- libavfilter-dev
3026
- libswscale-dev
3127
- libpostproc-dev
32-
- libavresample-dev
3328
- libswresample-dev
29+
- swig
30+
- doxygen
31+
- graphviz
32+
- curl
3433

35-
matrix:
36-
include:
34+
jobs:
35+
36+
# The FFmpeg 3.2 backport PPA has gone missing
37+
allow_failures:
38+
- name: "FFmpeg 3.2 GCC (Ubuntu 16.04 Xenial)"
3739

40+
include:
3841
- name: "Coverage + FFmpeg 3.4 GCC (Ubuntu 18.04 Bionic)"
3942
env:
4043
- BUILD_VERSION=coverage_ffmpeg34
@@ -46,29 +49,27 @@ matrix:
4649
apt:
4750
sources:
4851
- sourceline: 'ppa:openshot.developers/libopenshot-daily'
49-
- sourceline: 'ppa:beineri/opt-qt-5.12.3-bionic'
5052
packages:
51-
- *ff_common
53+
- *p_common
5254
- qt5-default
55+
- libavresample-dev
5356
- libjsoncpp-dev
5457
- lcov
5558
- binutils-common # For c++filt
5659

57-
- name: "FFmpeg 4 GCC (Ubuntu 18.04 Bionic)"
60+
- name: "FFmpeg 4 GCC (Ubuntu 20.04 Focal)"
5861
env:
5962
- BUILD_VERSION=ffmpeg4
6063
- CMAKE_EXTRA_ARGS=""
6164
- TEST_TARGET=test
6265
os: linux
63-
dist: bionic
66+
dist: focal
6467
addons:
6568
apt:
6669
sources:
6770
- sourceline: 'ppa:openshot.developers/libopenshot-daily'
68-
- sourceline: 'ppa:beineri/opt-qt-5.12.3-bionic'
69-
- sourceline: 'ppa:jonathonf/ffmpeg-4'
7071
packages:
71-
- *ff_common
72+
- *p_common
7273
- qt5-default
7374
- libjsoncpp-dev
7475
- libavcodec58
@@ -78,7 +79,6 @@ matrix:
7879
- libavfilter7
7980
- libswscale5
8081
- libpostproc55
81-
- libavresample4
8282
- libswresample3
8383

8484
- name: "FFmpeg 3.4 Clang (Ubuntu 18.04 Bionic)"
@@ -93,10 +93,10 @@ matrix:
9393
apt:
9494
sources:
9595
- sourceline: 'ppa:openshot.developers/libopenshot-daily'
96-
- sourceline: 'ppa:beineri/opt-qt-5.12.3-bionic'
9796
packages:
98-
- *ff_common
97+
- *p_common
9998
- qt5-default
99+
- libavresample-dev
100100
- libomp-dev
101101

102102
- name: "FFmpeg 3.2 GCC (Ubuntu 16.04 Xenial)"
@@ -110,10 +110,10 @@ matrix:
110110
apt:
111111
sources:
112112
- sourceline: 'ppa:openshot.developers/libopenshot-daily'
113-
- sourceline: 'ppa:beineri/opt-qt-5.10.0-xenial'
114113
- sourceline: 'ppa:jon-hedgerows/ffmpeg-backports'
115114
packages:
116-
- *ff_common
115+
- *p_common
116+
- libavresample-dev
117117
- libavcodec57
118118
- libavdevice57
119119
- libavfilter6
@@ -137,14 +137,15 @@ matrix:
137137
- sourceline: 'ppa:openshot.developers/libopenshot-daily'
138138
- sourceline: 'ppa:beineri/opt-qt-5.10.0-xenial'
139139
packages:
140-
- *ff_common
140+
- *p_common
141+
- libavresample-dev
141142

142143
script:
143144
- mkdir -p build; cd build;
144-
- cmake -DCMAKE_BUILD_TYPE:STRING="Debug" ${CMAKE_EXTRA_ARGS} ../
145+
- cmake -DCMAKE_INSTALL_PREFIX:PATH="$TRAVIS_OS_NAME-x64" -DCMAKE_BUILD_TYPE:STRING="Debug" ${CMAKE_EXTRA_ARGS} ../
145146
- make VERBOSE=1
146147
- make ${TEST_TARGET}
147-
- make install DESTDIR="$BUILD_VERSION"
148+
- make install
148149
- cd ..
149150

150151
after_success:

CMakeLists.txt

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -113,10 +113,6 @@ IF (WIN32)
113113
SET_PROPERTY(GLOBAL PROPERTY WIN32 "WIN32")
114114
ENDIF(WIN32)
115115

116-
include_directories(
117-
${CMAKE_CURRENT_SOURCE_DIR}/include
118-
${CMAKE_CURRENT_BINARY_DIR}/include)
119-
120116
############## Code Coverage #########################
121117
if (DISABLE_TESTS AND ENABLE_COVERAGE)
122118
message(WARNING "ENABLE_COVERAGE requires tests, overriding DISABLE_TESTS")
@@ -133,6 +129,16 @@ if (ENABLE_COVERAGE)
133129
endif()
134130
add_feature_info("Coverage" ENABLE_COVERAGE "analyze test coverage and generate report")
135131

132+
# Juce requires either DEBUG or NDEBUG to be defined on MacOS.
133+
# -DNDEBUG is set by cmake for all release configs, so add
134+
# -DDEBUG for debug builds. We'll do this for all OSes, even
135+
# though only MacOS requires it.
136+
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG")
137+
# Make sure we've picked some build type, default to debug
138+
if(NOT DEFINED CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL "")
139+
set(CMAKE_BUILD_TYPE "Debug")
140+
endif()
141+
136142
############## PROCESS src/ DIRECTORIES ##############
137143
add_subdirectory(src)
138144

0 commit comments

Comments
 (0)