Skip to content

Commit

Permalink
Merge branch 'devel'
Browse files Browse the repository at this point in the history
  • Loading branch information
pedrolcl committed Dec 31, 2020
2 parents c61b0ab + d4fc42d commit 2a6e5f8
Show file tree
Hide file tree
Showing 39 changed files with 13,716 additions and 191 deletions.
28 changes: 10 additions & 18 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,25 +1,17 @@
cmake_minimum_required(VERSION 3.0)
project(eassynth)
cmake_minimum_required(VERSION 3.9)
project( EASSynth
VERSION 1.3.0
DESCRIPTION "Sonivox EAS for Linux and Qt" )

include(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
if(COMPILER_SUPPORTS_CXX11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
else()
message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
endif()
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(VERSION_MAJOR "1")
set(VERSION_MINOR "2")
set(VERSION_PATCH "0")
set(VERSION_SUFFIX "")
set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX})
add_definitions(-DVERSION=${VERSION})

find_package(Qt5Core REQUIRED)
find_package(Qt5 COMPONENTS Core Gui Widgets REQUIRED)
find_package(Drumstick 2.0 COMPONENTS ALSA REQUIRED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(PULSE REQUIRED libpulse-simple)

set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DQT_NO_DEBUG_OUTPUT")
include(GNUInstallDirs)

add_subdirectory(sonivox)
add_subdirectory(libsvoxeas)
Expand Down
4 changes: 3 additions & 1 deletion EASSynth.pro
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@
#------------------------

TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS += sonivox \
libsvoxeas \
cmdlnsynth \
guisynth

libsvoxeas.depends = sonivox
cmdlnsynth.depends = libsvoxeas
guisynth.depends = libsvoxeas
5 changes: 2 additions & 3 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -303,9 +303,8 @@ the "copyright" line and a pointer to where the full notice is found.
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

Also add information on how to contact you by electronic and paper mail.

Expand Down
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ To build, test and debug you may also find QtCreator interesting. You may also u
Licenses
--------

Copyright (C) 2016 Pedro López-Cabanillas.
Copyright (C) 2016-2020 Pedro López-Cabanillas.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -37,9 +37,8 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.



Expand Down
22 changes: 8 additions & 14 deletions cmdlnsynth/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,21 +1,15 @@
pkg_check_modules(DRUMSTICK REQUIRED drumstick-alsa)

link_directories(
${DRUMSTICK_LIBRARY_DIRS}
)

include_directories(
${DRUMSTICK_INCLUDE_DIRS}
)

add_executable( cmdlnsynth main.cpp )

target_link_libraries( cmdlnsynth
Qt5::Core
svoxeas
${DRUMSTICK_LIBRARIES}
Qt5::Core
Drumstick::ALSA
svoxeas
)

target_compile_definitions( cmdlnsynth PRIVATE
VERSION=${PROJECT_VERSION}
$<$<CONFIG:RELEASE>:QT_NO_DEBUG_OUTPUT>
)

install( TARGETS cmdlnsynth
DESTINATION bin )
DESTINATION ${CMAKE_INSTALL_BINDIR} )
11 changes: 9 additions & 2 deletions cmdlnsynth/cmdlnsynth.pro
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,12 @@ LIBS += -lsvoxeas

SOURCES += main.cpp
QMAKE_RPATHDIR = $$OUT_PWD/../libsvoxeas
CONFIG += link_pkgconfig
PKGCONFIG += drumstick-alsa

_DRUMSTICKLIBS=$$(DRUMSTICKLIBS)
isEmpty( _DRUMSTICKLIBS ) {
CONFIG += link_pkgconfig
PKGCONFIG += drumstick-alsa
} else {
INCLUDEPATH += $$(DRUMSTICKINCLUDES)
LIBS += -L$$(DRUMSTICKLIBS) -ldrumstick-alsa
}
7 changes: 3 additions & 4 deletions cmdlnsynth/main.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Sonivox EAS Synthesizer for Qt applications
Copyright (C) 2016-2018, Pedro Lopez-Cabanillas <plcl@users.sf.net>
Copyright (C) 2016-2020, Pedro Lopez-Cabanillas <plcl@users.sf.net>
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -12,9 +12,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <signal.h>
Expand Down
2 changes: 1 addition & 1 deletion global.pri
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
VERSION = 1.2.0
VERSION = 1.3.0
DEFINES += VERSION=$$VERSION
38 changes: 14 additions & 24 deletions guisynth/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,40 +1,30 @@
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(Qt5Widgets REQUIRED)
pkg_check_modules(DRUMSTICK REQUIRED drumstick-alsa)

link_directories(
${DRUMSTICK_LIBRARY_DIRS}
)

include_directories(
${DRUMSTICK_INCLUDE_DIRS}
)

set( SOURCES
main.cpp
mainwindow.cpp
)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

set( SOURCES main.cpp mainwindow.cpp )
set( HEADERS mainwindow.h )
set( FORMS mainwindow.ui )
set( RESOURCES guisynth.qrc )

qt5_wrap_cpp ( MOC_SRCS ${HEADERS} )
qt5_wrap_ui ( UI_SRCS ${FORMS} )
qt5_add_resources ( RES_SRCS ${RESOURCES} )

add_executable( guisynth
${SOURCES}
${MOC_SRCS}
${UI_SRCS}
${RES_SRCS}
${HEADERS}
${FORMS}
${RESOURCES}
)

target_link_libraries( guisynth
Qt5::Widgets
Drumstick::ALSA
svoxeas
${DRUMSTICK_LIBRARIES}
)

target_compile_definitions( guisynth PRIVATE
VERSION=${PROJECT_VERSION}
$<$<CONFIG:RELEASE>:QT_NO_DEBUG_OUTPUT>
)

install( TARGETS guisynth
DESTINATION bin )
DESTINATION ${CMAKE_INSTALL_BINDIR} )
10 changes: 8 additions & 2 deletions guisynth/guisynth.pro
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,11 @@ LIBS += -lsvoxeas

QMAKE_RPATHDIR = $$OUT_PWD/../libsvoxeas

CONFIG += link_pkgconfig
PKGCONFIG += drumstick-alsa
_DRUMSTICKLIBS=$$(DRUMSTICKLIBS)
isEmpty( _DRUMSTICKLIBS ) {
CONFIG += link_pkgconfig
PKGCONFIG += drumstick-alsa
} else {
INCLUDEPATH += $$(DRUMSTICKINCLUDES)
LIBS += -L$$(DRUMSTICKLIBS) -ldrumstick-alsa
}
7 changes: 3 additions & 4 deletions guisynth/main.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Sonivox EAS Synthesizer for Qt applications
Copyright (C) 2016-2018, Pedro Lopez-Cabanillas <plcl@users.sf.net>
Copyright (C) 2016-2020, Pedro Lopez-Cabanillas <plcl@users.sf.net>
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -12,9 +12,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include "programsettings.h"
Expand Down
7 changes: 3 additions & 4 deletions guisynth/mainwindow.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Sonivox EAS Synthesizer for Qt applications
Copyright (C) 2016-2018, Pedro Lopez-Cabanillas <plcl@users.sf.net>
Copyright (C) 2016-2020, Pedro Lopez-Cabanillas <plcl@users.sf.net>
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -12,9 +12,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <QCloseEvent>
Expand Down
7 changes: 3 additions & 4 deletions guisynth/mainwindow.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Sonivox EAS Synthesizer for Qt applications
Copyright (C) 2016-2018, Pedro Lopez-Cabanillas <plcl@users.sf.net>
Copyright (C) 2016-2020, Pedro Lopez-Cabanillas <plcl@users.sf.net>
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -12,9 +12,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef MAINWINDOW_H
Expand Down
42 changes: 22 additions & 20 deletions libsvoxeas/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
pkg_check_modules(PULSE REQUIRED libpulse-simple)
pkg_check_modules(DRUMSTICK REQUIRED drumstick-alsa)

link_directories(
${PULSE_LIBRARY_DIRS}
${DRUMSTICK_LIBRARY_DIRS}
)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

set( HEADERS
programsettings.h
Expand All @@ -19,31 +16,36 @@ set( SOURCES
filewrapper.cpp
)

qt5_wrap_cpp( MOC_SRCS ${HEADERS} )

add_library( svoxeas SHARED ${MOC_SRCS} ${SOURCES} )
add_library( svoxeas SHARED ${HEADERS} ${SOURCES} )

set_target_properties( svoxeas PROPERTIES
VERSION 1.0.0
SOVERSION 1
VERSION ${PROJECT_VERSION}
SOVERSION ${PROJECT_VERSION_MAJOR}
)

target_link_libraries( svoxeas
sonivox
Qt5::Core
${PULSE_LIBRARIES}
${DRUMSTICK_LIBRARIES}
PUBLIC
sonivox
PRIVATE
Qt5::Core
Drumstick::ALSA
${PULSE_LIBRARIES}
)

target_include_directories( svoxeas
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
PRIVATE
${PULSE_INCLUDE_DIRS}
${DRUMSTICK_INCLUDE_DIRS}
)

install(
TARGETS svoxeas
DESTINATION lib${LIB_SUFFIX}
target_compile_definitions( svoxeas PRIVATE
VERSION=${PROJECT_VERSION}
$<$<CONFIG:RELEASE>:QT_NO_DEBUG_OUTPUT>
)

install( TARGETS svoxeas
DESTINATION ${CMAKE_INSTALL_LIBDIR} )

install ( FILES ${HEADERS}
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} )
7 changes: 3 additions & 4 deletions libsvoxeas/filewrapper.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Sonivox EAS Synthesizer for Qt applications
Copyright (C) 2016-2018, Pedro Lopez-Cabanillas <plcl@users.sf.net>
Copyright (C) 2016-2020, Pedro Lopez-Cabanillas <plcl@users.sf.net>
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -12,9 +12,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <QDebug>
Expand Down
7 changes: 3 additions & 4 deletions libsvoxeas/filewrapper.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
Sonivox EAS Synthesizer for Qt applications
Copyright (C) 2016-2018, Pedro Lopez-Cabanillas <plcl@users.sf.net>
Copyright (C) 2016-2020, Pedro Lopez-Cabanillas <plcl@users.sf.net>
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Expand All @@ -12,9 +12,8 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef MIDIIOWRAPPER_H
Expand Down
Loading

0 comments on commit 2a6e5f8

Please sign in to comment.