Skip to content

Commit

Permalink
Merge branch 'dev' (1.3.0 release)
Browse files Browse the repository at this point in the history
  • Loading branch information
watsaig committed Apr 26, 2016
2 parents f4b1079 + 303b587 commit 789a4b6
Show file tree
Hide file tree
Showing 298 changed files with 21,228 additions and 7,273 deletions.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ Thumbs.db
.settings
Makefile.Sankore*

*.swp
*.vim

# Build files #
###############
build
Expand All @@ -58,6 +61,8 @@ Makefile
Makefile.Debug
Makefile.Release

buildContext

# plugins #
###########

Expand Down
66 changes: 42 additions & 24 deletions OpenBoard.pro
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,22 @@ CONFIG += debug_and_release \


VERSION_MAJ = 1
VERSION_MIN = 02
VERSION_MIN = 3
VERSION_PATCH = 0
VERSION_TYPE = r # a = alpha, b = beta, rc = release candidate, r = release, other => error
VERSION_PATCH = 10
VERSION_BUILD = 0

VERSION = "$${VERSION_MAJ}.$${VERSION_MIN}.$${VERSION_PATCH}-$${VERSION_TYPE}.$${VERSION_BUILD}"

equals(VERSION_TYPE, r) {
VERSION = "$${VERSION_MAJ}.$${VERSION_MIN}.$${VERSION_PATCH}"
}

VERSION = "$${VERSION_MAJ}.$${VERSION_MIN}.$${VERSION_TYPE}.$${VERSION_PATCH}"
VERSION = $$replace(VERSION, "\\.r", "")

LONG_VERSION = "$${VERSION}.$${SVN_VERSION}"
macx:OSX_VERSION = "$${VERSION} (r$${SVN_VERSION})"

VERSION_RC = $$VERSION_MAJ,$$VERSION_MIN,$$VERSION_TYPE,$$VERSION_PATCH
VERSION_RC = $$VERSION_MAJ,$$VERSION_MIN,$$VERSION_PATCH,$$VERSION_TYPE,$$VERSION_BUILD
VERSION_RC = $$replace(VERSION_RC, "a", "160") # 0xA0
VERSION_RC = $$replace(VERSION_RC, "b", "176") # 0xB0
VERSION_RC = $$replace(VERSION_RC, "rc", "192" ) # 0xC0
Expand Down Expand Up @@ -109,12 +114,20 @@ RCC_DIR = $$BUILD_DIR/rcc
UI_DIR = $$BUILD_DIR/ui

win32 {


LIBS += -lUser32
LIBS += -lGdi32
LIBS += -lAdvApi32
LIBS += -lOle32

RC_FILE = resources/win/OpenBoard.rc
CONFIG += qaxcontainer
CONFIG += axcontainer
exists(console):CONFIG += console
QMAKE_CXXFLAGS += /MP
QMAKE_CXXFLAGS += /MD
QMAKE_CXXFLAGS_RELEASE += /Od /Zi
QMAKE_LFLAGS_RELEASE += /DEBUG
QMAKE_LFLAGS += /VERBOSE:LIB
UB_LIBRARY.path = $$DESTDIR
UB_I18N.path = $$DESTDIR/i18n
UB_ETC.path = $$DESTDIR
Expand All @@ -124,36 +137,41 @@ win32 {
system(echo "$$LONG_VERSION" > $$BUILD_DIR/longversion)
system(echo "$$SVN_VERSION" > $$BUILD_DIR/svnversion)

DEFINES += NOMINMAX # avoids compilation error in qdatetime.h


}

macx {
LIBS += -framework Foundation
LIBS += -framework Cocoa
LIBS += -framework Carbon
LIBS += -framework AVFoundation
LIBS += -framework CoreMedia
LIBS += -lcrypto

CONFIG(release, debug|release):CONFIG += x86

# [03-02-2011] We must use the 32bit version for the moment
# because the Quicktime components used by this application
# are not yet available in 64bits.
CONFIG(debug, debug|release):CONFIG += x86
CONFIG(release, debug|release):CONFIG += x86_64
CONFIG(debug, debug|release):CONFIG += x86_64

QMAKE_MAC_SDK = "/Developer/SDKs/MacOSX10.6.sdk"
QMAKE_MACOSX_DEPLOYMENT_TARGET = "10.5"
QMAKE_MAC_SDK = macosx
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.10

VERSION_RC_PATH = "$$BUILD_DIR/version_rc"
QMAKE_CXXFLAGS += -Wno-overloaded-virtual
#VERSION_RC_PATH = "$$BUILD_DIR/version_rc"

# No references to breakpad in the code =>is this still used?
# Embed version into executable for breakpad
QMAKE_LFLAGS += -sectcreate \
__DATA \
__version \
$$VERSION_RC_PATH
#QMAKE_LFLAGS += -sectcreate \
# __DATA \
# __version \
# $$VERSION_RC_PATH

QMAKE_CXXFLAGS_RELEASE += -gdwarf-2 \
-mdynamic-no-pic

QMAKE_CFLAGS += -fopenmp
QMAKE_CXXFLAGS += -fopenmp
QMAKE_LFLAGS += -fopenmp
# QMAKE_CFLAGS += -fopenmp
# QMAKE_CXXFLAGS += -fopenmp
# QMAKE_LFLAGS += -fopenmp

CONTENTS_DIR = "Contents"
RESOURCES_DIR = "Contents/Resources"
Expand Down Expand Up @@ -364,7 +382,7 @@ macx {
system(mkdir -p $$BUILD_DIR)
system(printf \""$$OSX_VERSION"\" > $$BUILD_DIR/osx_version)
system(printf \""$$VERSION"\" > $$BUILD_DIR/version)
system(printf "%02x%02x%02x%02x" `printf $$VERSION_RC | cut -d ',' -f 1` `printf $$VERSION_RC | cut -d ',' -f 2` `printf $$VERSION_RC | cut -d ',' -f 3` `printf $$VERSION_RC | cut -d ',' -f 4` | xxd -r -p > "$$VERSION_RC_PATH")
# system(printf "%02x%02x%02x%02x" `printf $$VERSION_RC | cut -d ',' -f 1` `printf $$VERSION_RC | cut -d ',' -f 2` `printf $$VERSION_RC | cut -d ',' -f 3` `printf $$VERSION_RC | cut -d ',' -f 4` | xxd -r -p > "$$VERSION_RC_PATH")
}

linux-g++* {
Expand Down
3 changes: 0 additions & 3 deletions README

This file was deleted.

38 changes: 38 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# OpenBoard
OpenBoard is an open source cross-platform interactive white board application designed primarily for use in schools. It was originally forked from Open-Sankoré, which was itself based on Uniboard.

Supported platforms are Windows (7+), OS X (10.9+) and Linux (tested on Ubuntu 14.04 and 16.04).


## Installing

Installers are available for Windows, OS X and Ubuntu on the [wiki](https://github.com/DIP-SEM/OpenBoard/wiki/Downloads).

## Building from source
First, obtain the third party libraries from the OpenBoard-ThirdParty repository, and build them (instructions are provided for each library).

Then, you may use the build (and packaging) scripts which are provided for all three platforms. These take care of compiling OpenBoard, including the translations (for OpenBoard and for Qt), stripping the debug symbols, creating the installers etc.
Minor modification to those scripts may be necessary depending on your configuration, to set the correct Qt path for example.

Alternatively, you can easily build OpenBoard with qmake and make:

qmake OpenBoard.pro -spec linux-g++-64 # replace linux-g++-64 by macx or win32 for other platforms
make

Compilers used are gcc (Linux), clang (OS X) and MSVC 2010 (Windows). Make sure that your version of Qt matches this, as it is not possible e.g to build OpenBoard with clang if Qt was built with gcc.

## Dependencies
The latest version (1.3) requires Qt 5.5. (While it has been shown to mostly work with Qt 5.2, we cannot guarantee compatibility with Qt versions other than 5.5.)

### Qt 5.5 on Linux

Due to a shared library conflict within Qt 5 in some distributions / some Qt versions (the Multimedia and Webkit modules were built against different versions of gstreamer by default), a specific installation of Qt5.5 may be needed for all of OpenBoard's features to work correctly.

It can either be built from source, with the configure flag `-gstreamer 1.0` (see [here](http://doc.qt.io/qt-5/linux-building.html)), or installed from Stephan Binner's PPAs on Ubuntu.
In the latter case, simply add the repositories and install Qt 5.5.1 like so (example provided for Ubuntu 14.04, aka "Trusty"):

sudo add-apt-repository ppa:beineri/opt-qt551-trusty
sudo apt-get update
sudo apt-get install qt-latest

Some distributions, such as Ubuntu 16.04, provide Qt 5.5.1 packages that work perfectly with OpenBoard, so you can simply install Qt from the official repository.
27 changes: 0 additions & 27 deletions TEST_OpenBoard_Win32.txt

This file was deleted.

Loading

0 comments on commit 789a4b6

Please sign in to comment.