Skip to content

Commit

Permalink
Merge branch 'master' into pull_upstream
Browse files Browse the repository at this point in the history
* master: (55 commits)
  Bump log4j versions (#81)
  Fix CI issue for java certificates(#79)
  Use backward-cpp for backtrace (#55)
  Use boost:stacktrace for sig_handler for better backtracing (#54)
  Reduce warning(s) in Github Actions  (#53)
  Switch to GitHub CI (#52)
  Multi OS Build Changes (#47)
  Orkweb Startup Fixes (#39)
  Update readme to installation wiki
  Travis deploy war's
  Bump log4j versions (#37)
  Travis test java modules (#34)
  Bump junit from 4.8 to 4.13.1 in /orkbasej
  add nativeCallId in AudioTapeDescription
  Update README.md
  Upload Build Artifacts to Github Releases (#28)
  Add Build Status to README.md
  create orkaudio deb
  TravisCI Build
  orkaudio: OggOpusFile fix free exception
  ...
  • Loading branch information
kingster committed Dec 23, 2021
2 parents 995fe51 + 57c524f commit fe83ae4
Show file tree
Hide file tree
Showing 138 changed files with 4,672 additions and 4,628 deletions.
57 changes: 57 additions & 0 deletions .devcontainer/Dockerfile.orkaudio.build
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# escape=`
ARG TAG=xenial

FROM ubuntu:$TAG

# Configure apt
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y gnupg && rm -rf /var/lib/apt/lists/*

RUN . /etc/os-release && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 31F54F3E108EAD31 `
&& echo "deb [trusted=yes] http://ppa.launchpad.net/mhier/libboost-latest/ubuntu $UBUNTU_CODENAME main" >> /etc/apt/sources.list

RUN apt-get update && apt-get install -y build-essential libtool automake git tree rpm libboost1.70-dev`
libpcap-dev libsndfile1-dev libapr1-dev libspeex-dev liblog4cxx-dev libace-dev `
libopus-dev libxerces-c3-dev libssl-dev cmake libdw-dev liblzma-dev libunwind-dev`
&& rm -rf /var/lib/apt/lists/*

#silk
RUN mkdir -p /opt/silk && chmod 777 /opt/silk`
&& git clone --depth 1 https://github.com/gaozehua/SILKCodec.git /opt/silk/SILKCodec `
&& cd /opt/silk/SILKCodec/SILK_SDK_SRC_FIX `
&& CFLAGS='-fPIC' make all

#opus
RUN mkdir -p /opt/opus && chmod 777 /opt/opus`
&& git clone https://github.com/xiph/opus.git /opt/opus `
&& cd /opt/opus `
&& git checkout v1.2.1 `
&& ./autogen.sh `
&& ./configure --enable-shared --with-pic --enable-static `
&& make `
&& make install `
&& ln -s /usr/local/lib/libopus.so /usr/local/lib/libopusstatic.so `
&& ln -s /usr/include/opus /opt/opus/include/opus

#g729
RUN mkdir -p /opt/bcg729 && chmod 777 /opt/bcg729`
&& git clone --depth 1 https://github.com/BelledonneCommunications/bcg729.git /opt/bcg729 `
&& cd /opt/bcg729 `
&& cmake . -DCMAKE_INSTALL_PREFIX=/usr`
&& make `
&& make install

#backward-cpp
RUN mkdir -p /opt/backward-cpp && chmod 777 /opt/backward-cpp`
&& git clone --depth 1 https://github.com/bombela/backward-cpp.git /opt/backward-cpp `
&& ln -s /opt/backward-cpp/backward.hpp /usr/local/include/backward.hpp

COPY .devcontainer/build.sh /entrypoint.sh

#INSERT_HERE

ENTRYPOINT ["/entrypoint.sh"]

# Set the default shell to bash instead of sh
ENV SHELL /bin/bash
22 changes: 22 additions & 0 deletions .devcontainer/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash
set -e

#make orkbase
cd /oreka-src/orkbasecxx
autoreconf -i
./configure CXX=g++
make
make install

#orkaudio
cd /oreka-src/orkaudio
autoreconf -i
./configure CXX=g++
make
make install

#package orkaudio deb
cd /oreka-build/distribution
bash make-orkaudio-deb.sh

ls -ltrah *.deb
22 changes: 22 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// See https://aka.ms/vscode-remote/devcontainer.json for format details.
{
"name": "oreka",
"dockerFile": "Dockerfile.orkaudio.build",
"runArgs": [
"--cap-add=SYS_PTRACE",
"--security-opt", "seccomp=unconfined"
],
"context" : "..",

// "appPort": [],

"settings": {
"terminal.integrated.shell.linux": "/bin/bash"
},

//"postCreateCommand": "make",

"extensions": [
"ms-vscode.cpptools"
]
}
99 changes: 99 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
name: Oreka Build

on:
release:
push:
branches:
- master
pull_request:
branches:
- master

jobs:
oreka_cpp_job:
runs-on: ubuntu-latest
name: Build Orkaudio
services:
registry:
image: registry:2
ports:
- 5000:5000
strategy:
fail-fast: false
matrix:
os-version: [ "xenial", "bionic", "focal" ]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Clone build-tool repo
run : |
git clone https://github.com/voiceip/oreka-build.git ./oreka-build
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
with:
driver-opts: network=host
- name: Cache Docker layers ${{ matrix.os-version }}
uses: actions/cache@v2
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ matrix.os-version }}-${{ github.sha }}
restore-keys: |
${{ runner.os }}-buildx-${{ matrix.os-version }}-
- name: Build Docker Image for ubuntu-${{ matrix.os-version }}
uses: docker/build-push-action@v2
with:
# using "load: true" forces the docker driver
# not necessary here, because we set it before
#load: true
push: true
tags: localhost:5000/${{ github.repository_owner }}/oreka-${{ matrix.os-version }}:latest
context: .
file: ./.devcontainer/Dockerfile.orkaudio.build
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
build-args: |
TAG=${{ matrix.os-version }}
- name: Compile
run: |
docker run -v $(pwd)/oreka-build:/oreka-build -v $(pwd):/oreka-src -i -i localhost:5000/${{ github.repository_owner }}/oreka-${{ matrix.os-version }}:latest bash /entrypoint.sh
mv ./oreka-build/distribution/orkaudio.deb ./oreka-build/distribution/orkaudio_${{ matrix.os-version }}.deb
- name: "Create release"
uses: ncipollo/release-action@v1
if: startsWith(github.ref, 'refs/tags/v')
with:
artifacts: "./oreka-build/distribution/*.deb"
draft: true
allowUpdates: true
token: ${{ secrets.GH_TOKEN }}
- name: Move cache
run: |
rm -rf /tmp/.buildx-cache
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
oreka_java_job:
runs-on: ubuntu-latest
name: Build Orkweb & Orktrack
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: '8'
distribution: 'adopt'
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Build with Maven
run: |
mvn clean install -DskipTests -Dmaven.test.skip=true
- name: "Create release"
uses: ncipollo/release-action@v1
if: startsWith(github.ref, 'refs/tags/v')
with:
artifacts: "orktrack/target/*.war,orkweb/target/*.war"
draft: true
allowUpdates: true
token: ${{ secrets.GH_TOKEN }}
117 changes: 105 additions & 12 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,20 +1,113 @@
# Created by https://www.gitignore.io/api/c++,cmake,intellij,sublimetext

### C++ ###
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.lo
*.dylib
*.dll

# Compiled Static libraries
*.lai
*.la
.libs
.deps
Makefile*
-*
ReleaseVC12
*sdf
config*
*.a
*.lib

# Executables
*.exe
*.out
*.app

### CMake ###
CMakeCache.txt
CMakeFiles
CMakeScripts
Testing
Makefile
cmake_install.cmake
install_manifest.txt
compile_commands.json
CTestTestfile.cmake
build
CMakeLists.txt
cmake-build-debug/

##Makefile##
Makefile.in
config.h.in
aclocal.m4
autom4te.cache/
depcomp
config.h

.deps
.libs
#temp
*~
*.lock
*.cache

install-sh
libtool
compile
depcomp
ltmain.sh
missing
stamp-h1
nothing added to commit but untracked files present (use "git add" to track)

_libs
acinclude.m4
aclocal.m4
atconfig
autom4te.cache
config-h.in
config.*
configure
conftest*
libtool
libtool-*.tar.bz2
libtool-*.tar.gz
libtool-*.tar.lzma
libtool-*.tar.xz

### Intellij ###

# User-specific stuff:
.idea

## File-based project format:
*.iws
*.iml

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

orkaudio/orkaudio
orkaudio/audiocaptureplugins/*/AudioCapturePluginCommon.cpp
!orkaudio/audiocaptureplugins/common/*
-.s

.vscode

target/
.DS_Store
.settings
.factorypath
.classpath
**/WEB-INF/classes/*

.project
Loading

0 comments on commit fe83ae4

Please sign in to comment.