Skip to content

Commit

Permalink
Merge branch '2.3' of github.com:mixxxdj/mixxx into remove-scons
Browse files Browse the repository at this point in the history
  • Loading branch information
Holzhaus committed Dec 13, 2020
2 parents 9d17b8d + 7b6f083 commit 4cbf793
Show file tree
Hide file tree
Showing 691 changed files with 1,282 additions and 5,099 deletions.
5 changes: 5 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,11 @@ jobs:
run: cpack -G ${{ matrix.cpack_generator }} -V
working-directory: build

- name: "Package for PPA"
if: startsWith(matrix.os, 'ubuntu')
run: cpack -G External -D DEB_SOURCEPKG=ON
working-directory: cmake_build

- name: "[macOS] Sign Package"
if: runner.os == 'macOS' && env.MACOS_CODESIGN_OPENSSL_PASSWORD != null && env.MACOS_CODESIGN_CERTIFICATE_PASSWORD != null
run: codesign --verbose=4 --options runtime --sign "${APPLE_CODESIGN_IDENTITY}" --entitlements ../cmake/macos/entitlements.plist *.dmg
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ src/mixxx.res
*.cfg
!/res/keyboard/*.cfg

__pycache__

lib/*/*.a
lib/*/lib/*.a

Expand Down
2 changes: 0 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,8 +128,6 @@

## [2.2.2](https://launchpad.net/mixxx/+milestone/2.2.2) (2019-08-10)

==== 2.2.2 2019-08-10 ====

* Fix battery widget with upower <= 0.99.7. #2221
* Fix BPM adjust in BpmControl. lp:1836480
* Disable track metadata export for .ogg files and TagLib 1.11.1. lp:1833190
Expand Down
118 changes: 90 additions & 28 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,12 @@ endif()

set(CMAKE_CXX_STANDARD 17)

# Speed up builds on HDDs
# Speed up builds on HDDs and prevent wearing of SDDs
if(GNU_GCC OR LLVM_CLANG)
add_compile_options(-pipe)
option(BUILD_LOW_MEMORY "Store temporary build files on disk by disabling the build option -pipe" OFF)
if(NOT BUILD_LOW_MEMORY)
add_compile_options(-pipe)
endif()
endif()

# Profiling
Expand Down Expand Up @@ -601,7 +604,6 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/library/serato/seratoplaylistmodel.cpp
src/library/setlogfeature.cpp
src/library/sidebarmodel.cpp
src/library/songdownloader.cpp
src/library/stardelegate.cpp
src/library/stareditor.cpp
src/library/starrating.cpp
Expand Down Expand Up @@ -1205,13 +1207,26 @@ install(
"*.qm"
)


# Font files
install(
DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}/res/fonts"
DESTINATION
"${MIXXX_INSTALL_DATADIR}"
)
if(UNIX AND NOT APPLE)
# Ubuntu and OpenSans are already installed by package manager
install(
DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}/res/fonts"
DESTINATION
"${MIXXX_INSTALL_DATADIR}"
PATTERN "OpenSans*" EXCLUDE
PATTERN "Ubuntu*" EXCLUDE
)
else()
install(
DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}/res/fonts"
DESTINATION
"${MIXXX_INSTALL_DATADIR}"
)
endif()

# Keyboard mapping(s)
install(
Expand Down Expand Up @@ -1270,16 +1285,29 @@ if(UNIX AND NOT APPLE)
FILES
"${CMAKE_CURRENT_SOURCE_DIR}/res/linux/mixxx.appdata.xml"
DESTINATION
"${CMAKE_INSTALL_DATADIR}/appdata"
"${CMAKE_INSTALL_DATAROOTDIR}/metainfo"
)

# udev rule file for USB HID and Bulk controllers
install(
FILES
"${CMAKE_CURRENT_SOURCE_DIR}/res/linux/mixxx-usb-uaccess.rules"
DESTINATION
"${CMAKE_INSTALL_SYSCONFDIR}/udev/rules.d"
)
option(INSTALL_USER_UDEV_RULES "Install user udev rule file for USB HID and Bulk controllers" ON)
if (INSTALL_USER_UDEV_RULES)
install(
FILES
"${CMAKE_CURRENT_SOURCE_DIR}/res/linux/mixxx-usb-uaccess.rules"
DESTINATION
"${CMAKE_INSTALL_SYSCONFDIR}/udev/rules.d"
)
message(WARNING
" The udev rule file for USB HID and Bulk controller permissions will\n"
" be installed to: ${CMAKE_INSTALL_SYSCONFDIR}/udev/rules.d.\n"
" If you are installing Mixxx from source for your own use, copy\n"
" mixxx-usb-uaccess.rules to /etc/udev/rules.d/ and run:\n"
" udevadm control --reload-rules && udevadm trigger\n"
" as root to load the rules.\n"
" If you are building a package for a distribution, the correct\n"
" directory for system rules is /lib/udev/rules.d with an appropriate\n"
" priority prefix. Adjust your package script accordingly and set\n"
" -DINSTALL_USER_UDEV_RULES=OFF")
endif()
endif()

#
Expand Down Expand Up @@ -1488,13 +1516,15 @@ else()
endif()
add_dependencies(mixxx-lib mixxx-res mixxx-script)

file(READ src/_version.h MIXXX_VERSION_FILECONTENT)
string(REGEX REPLACE "^.*#define MIXXX_VERSION \"(.*)\".*$" "\\1" MIXXX_VERSION "${MIXXX_VERSION_FILECONTENT}")
# a dummy configure to force a reconfigure when the version changes
configure_file(src/_version.h src/_version.h)

# Windows-only resource file
if(WIN32)
string(TIMESTAMP MIXXX_YEAR "%Y")

file(READ src/_version.h MIXXX_VERSION_FILECONTENT)
string(REGEX REPLACE "^.*#define MIXXX_VERSION \"(.*)\".*$" "\\1" MIXXX_VERSION "${MIXXX_VERSION_FILECONTENT}")

# Remove anything after ~ or - in the version number and replace the dots with commas
string(REGEX REPLACE "^([^~-]+).*$" "\\1" MIXXX_FILEVERSION "${MIXXX_VERSION}")
string(REPLACE "." "," MIXXX_FILEVERSION "${MIXXX_FILEVERSION}")
Expand Down Expand Up @@ -2039,6 +2069,9 @@ endif()

# iOS/OS X Frameworks
if(APPLE)
find_library(COREFOUNDATION_LIBRARY CoreFoundation REQUIRED)
target_link_libraries(mixxx-lib PUBLIC ${COREFOUNDATION_LIBRARY})

# The iOS/OS X security framework is used to implement sandboxing.
find_library(SECURITY_LIBRARY Security REQUIRED)
target_link_libraries(mixxx-lib PUBLIC ${SECURITY_LIBRARY})
Expand Down Expand Up @@ -2127,11 +2160,7 @@ if(COREAUDIO)
lib/apple/CAStreamBasicDescription.cpp
)
find_library(AUDIOTOOLBOX_LIBRARY AudioToolbox REQUIRED)
find_library(COREFOUNDATION_LIBRARY CoreFoundation REQUIRED)
target_link_libraries(mixxx-lib PUBLIC
${AUDIOTOOLBOX_LIBRARY}
${COREFOUNDATION_LIBRARY}
)
target_link_libraries(mixxx-lib PUBLIC ${AUDIOTOOLBOX_LIBRARY})
target_compile_definitions(mixxx-lib PRIVATE __COREAUDIO__)
target_include_directories(mixxx-lib SYSTEM PUBLIC lib/apple)
endif()
Expand Down Expand Up @@ -2510,7 +2539,8 @@ endif()
# Packaging
set(CPACK_PACKAGE_VENDOR "Mixxx Project")
set(CPACK_PACKAGE_CONTACT "RJ Skerry-Ryan <[email protected]>")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cpack_package_description.txt")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Digital DJ Application")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/packaging/CPackPackageDescription.txt")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Mixxx")
set(CPACK_PACKAGE_EXECUTABLES "mixxx;Mixxx")
set(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/res/images/mixxx_install_logo.bmp")
Expand All @@ -2522,12 +2552,42 @@ set(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/README")
set(CPACK_STRIP_FILES ON)
set(CPACK_CREATE_DESKTOP_LINKS "mixxx")

set(CPACK_SOURCE_IGNORE_FILES "\\\\.#;/#;.*~;\\\\.o$")
list(APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.git/")
list(APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.github/")
list(APPEND CPACK_SOURCE_IGNORE_FILES "/cache/")
list(APPEND CPACK_SOURCE_IGNORE_FILES "/.*_build/")
list(APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.sconf_temp/")
list(APPEND CPACK_SOURCE_IGNORE_FILES "${CMAKE_CURRENT_BINARY_DIR}/")
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}-Source")

set(CPACK_DEBIAN_PACKAGE_SECTION "sound")
set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
set(CPACK_DEBIAN_PACKAGE_SUGGESTS "pdf-viewer")
set(CPACK_DEBIAN_PACKAGE_SUGGESTS "pdf-viewer, pulseaudio-utils")
set(CPACK_DEBIAN_PACKAGE_REPLACES "mixxx-data")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libqt5opengl5, libqt5svg5, libqt5xml5, libqt5sql5, libqt5sql5-sqlite")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libqt5sql5-sqlite, fonts-open-sans, fonts-ubuntu")
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "${CPACK_PACKAGE_HOMEPAGE_URL}")
file(READ ${CPACK_PACKAGE_DESCRIPTION_FILE} CPACK_DEBIAN_PACKAGE_DESCRIPTION)
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED "${CPACK_DEBIAN_PACKAGE_DESCRIPTION}")
string(PREPEND CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}" "\n")
string(REPLACE "\n\n" "\n.\n" CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED "${CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED}")
string(REPLACE "\n" "\n " CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED "${CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED}")
if("3.16.0" VERSION_GREATER CMAKE_VERSION)
# This hack is no longer required with cpack version 3.16.3
set(CPACK_PACKAGE_DESCRIPTION "${CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED}")
endif()

# The upstream version must not contain hyphen
string(REPLACE "-" "~" CPACK_DEBIAN_UPSTREAM_VERSION "${MIXXX_VERSION}")
set(CPACK_DEBIAN_DEBIAN_VERSION 0ubuntu1)
set(CPACK_DEBIAN_DEBIAN_VERSION_EXTRA "${GIT_BRANCH}~git${GIT_COMMIT_COUNT}")
string(REPLACE "_" "" CPACK_DEBIAN_DEBIAN_VERSION_EXTRA "${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}")
set(CPACK_DEBIAN_PACKAGE_VERSION "${CPACK_DEBIAN_UPSTREAM_VERSION}-ppa1~${GIT_BRANCH}~git${GIT_COMMIT_COUNT}~bionic")
set(CPACK_DEBIAN_DISTRIBUTION_RELEASES bionic focal groovy)
set(CPACK_DEBIAN_SOURCE_DIR ${CMAKE_SOURCE_DIR})
set(CPACK_DEBIAN_UPLOAD_PPA_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/packaging/CPackDebUploadPPA.cmake")


set(CPACK_WIX_UPGRADE_GUID "921DC99C-4DCF-478D-B950-50685CB9E6BE")
set(CPACK_WIX_LICENSE_RTF "${CMAKE_CURRENT_SOURCE_DIR}/cmake/wix/LICENSE.rtf")
Expand All @@ -2536,6 +2596,8 @@ set(CPACK_WIX_PROPERTY_ARPHELPLINK "${CPACK_PACKAGE_HOMEPAGE_URL}")
set(CPACK_WIX_UI_BANNER "${CMAKE_CURRENT_SOURCE_DIR}/cmake/wix/images/banner.bmp")
set(CPACK_WIX_UI_DIALOG "${CMAKE_CURRENT_SOURCE_DIR}/cmake/wix/images/dialog.bmp")

set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_SOURCE_DIR}/packaging/CPackConfig.cmake" )

include(CPack)

if(APPLE AND MACOS_BUNDLE)
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,11 +105,11 @@ license.
[launchpad 2.3.0]: https://launchpad.net/mixxx/+milestone/2.3.0
[wiki roadmap]: https://mixxx.org/wiki/doku.php/development_roadmap
[easybugs]: https://bugs.launchpad.net/mixxx/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=NEW&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_commenter=&field.subscriber=&field.structural_subscriber=&field.tag=easy&field.tags_combinator=ANY&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on&field.has_blueprints.used=&field.has_blueprints=on&field.has_no_blueprints.used=&field.has_no_blueprints=on
[creating skins]: https://mixxx.org/wiki/doku.php/creating_skins
[creating skins]: https://mixxx.org/wiki/doku.php/Creating-Skins
[help translate content]: https://www.transifex.com/projects/p/mixxxdj
[Mixxx i18n wiki]: https://mixxx.org/wiki/doku.php/internationalization
[Mixxx localization forum]: https://mixxx.org/forums/viewforum.php?f=10
[Mixxx glossary]: https://www.transifex.com/projects/p/mixxxdj/glossary/l/en/
[hardware compatibility]: https://mixxx.org/wiki/doku.php/hardware_compatibility
[hardware compatibility]: https://mixxx.org/wiki/doku.php/Hardware-Compatibility
[zulip]: https://mixxx.zulipchat.com/
[discourse]: https://mixxx.discourse.group/
1 change: 0 additions & 1 deletion cmake/debian/compat

This file was deleted.

127 changes: 0 additions & 127 deletions cmake/debian/control

This file was deleted.

1 change: 0 additions & 1 deletion cmake/debian/dirs

This file was deleted.

7 changes: 0 additions & 7 deletions cmake/debian/menu

This file was deleted.

12 changes: 0 additions & 12 deletions cmake/debian/mixxx.desktop

This file was deleted.

2 changes: 0 additions & 2 deletions cmake/debian/mixxx.docs

This file was deleted.

Loading

0 comments on commit 4cbf793

Please sign in to comment.