1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-04-29 15:19:44 +02:00

80 Commits

Author SHA1 Message Date
Joakim Gyllström
75b90ce4be
Opt in for macOS dark mode support 2021-09-23 20:25:16 +02:00
Mondanzo
a7db3db5a9
Replace Audacity references in macOS manifest
Signed-off-by: Mondanzo <danzo@mondanzo.de>
Signed-off-by: Panagiotis Vasilopoulos <hello@alwayslivid.com>
Reference-to: https://github.com/tenacityteam/tenacity/pull/632
2021-09-19 07:57:37 +00:00
Emily Mabrey
d73e9eb1cd
Innosetup installer updates
Rename usage of outdated Innosetup functions
Configure CMake to use the same build type for Innosetup target
Use Tenacity logos
Update readme information displayed post-install
Update license information displayed pre-install
Fix installer generation
Cleanup innosetup configuration

Signed-off-by: Emily Mabrey <emabrey@tenacityaudio.org>
2021-09-03 16:18:36 -04:00
Sol Fisher Romanoff
9463eba2ea
Update macOS DMG background image
Signed-off-by: Sol Fisher Romanoff <sol@solfisher.com>
2021-08-31 13:55:58 +03:00
aeiouaeiouaeiouaeiouaeiouaeiou
b2243e97f4
Update macOS icons
Reference-to: https://github.com/tenacityteam/tenacity/pull/556

Signed-off-by: aeiouaeiouaeiouaeiouaeiouaeiou <aeioudev@outlook.com>
2021-08-30 13:05:01 +03:00
Be
43eeb00900
remove unused CMake modules
Signed-off-by: Be <be@mixxx.org>
2021-08-16 18:36:31 -05:00
Humberto Rocha
e0f34e7154
Use git describe in About Dialog
- Replaced Commit Id by Version from GIT_DESCRIBE output
- Injected GIT_DESCRIBE macro at Version.cmake
- Removed timestamping from version description and cleaned its code

Resolve: #460

Signed-off-by: Humberto Rocha <humrochagf@gmail.com>
2021-08-13 13:43:28 +03:00
Sol Fisher Romanoff
8cae1b7cb4
Replace references to topdir and libsrc
Signed-off-by: Sol Fisher Romanoff <sol@solfisher.com>
2021-08-07 14:34:32 +03:00
Sol Fisher Romanoff
56c953a14d
Use git-describe in versions
Reference-to: https://github.com/tenacityteam/tenacity/pull/396

Signed-off-by: Sol Fisher Romanoff <sol@solfisher.com>
2021-08-03 13:52:23 +03:00
Edgar
04609bba01
Allow building Tenacity without Conan
Conan can still be used, but it is fully optional. This should help packagers
a lot.

Signed-off-by: Edgar <Edgar@AnotherFoxGuy.com>
2021-07-30 23:22:48 +00:00
Emily Mabrey
e06af5bb29
Fix MacOS hdiutil CMake parallelization issue
* Make CMake builds better parallelized
* Update CI Build script parallelization
* Make `repeat_hdiutil.sh` take longer between repeats
* Make sure that bash is the latest version on CI builds.

Signed-off-by: Emily Mabrey <emabrey@tenacityaudio.org>
Reference-to: https://github.com/tenacityteam/tenacity/pull/391
2021-07-26 23:55:44 -04:00
Panagiotis Vasilopoulos
79d7db6aa7
macOS: Fix building, update instructions
Signed-off-by: Panagiotis Vasilopoulos <hello@alwayslivid.com>
2021-07-22 14:16:38 +00:00
Ajay Ramachandran
cb7a6c9056
Rename executable names and package name
Switch folder paths to tenacity

Signed-off-by: Ajay Ramachandran <dev@ajay.app>
2021-07-22 14:16:19 +00:00
Emily Mabrey
2f316d5bc4
Rename project in many places; Replace Most Project Logos; Refactor About Tenacity... Dialog (#276)
Add `locale/en.po` file.
Add English to `locale/LINGUAS` list.
Partially duplicate `msgid`s to `msgstr`s in English locale enable eventual key `msgid` changes
Replace former project name with Tenacity in English locale.
Replace former project website with Tenacity compatible usages in English locale.
Modify `AboutDialog.h` by renaming variables.
Modify `AboutDialog.cpp` by replacing usage of pre-fork name in Strings.
Modify AddBuildInfoRow methods to be static in About dialog.
Make License text const in About dialog.
Make pre-fork credits different in About dialog.
Begin adding Tenacity specific credits
Macros starting with `__` are reserved, so I removed the `__` on the About Dialog guard macro.
Remove `AboutDialog::` from usage of `Role` in `AboutDialog.h`
Refactor overly long generator method into separate methods in `AboutDialog.(h|cpp)`
Begin adding Tenacity developer information
Cleanup layout of `AboutDialog.h` and `AboutDialog.cpp`
Add `safedelete` macro to compliment odd `safenew` macro
Add `enum` to `ShuttleGui.cpp` to make it more clear what `Prop` method is doing.
Remove a ton of pointless and/or redunant `#ifdef` usage
Remove pointless singleton in AboutDialog
Make AboutDialog modal on MacOS
Fix reference type use of `auto` in `AudacityApp` b/c it makes unintentional copy.
Update XPM and PNG images using Tenacity assets
Update ICO images using Tenacity assets.
Fix Windows resource script that improperly used `winuser.h` import.
Add `*.aps` to gitignore to prevent IDE RC pre-load file from being committed.
Add default values for pre-processor constants in `tenacity.rc`.
Make changes needed for `Tenacity.exe` binary
Add 8x8 PNG to Windows ICO files
Replace project name in various CMake and CPack file.
Replace project name in various directory structures.
Replace project name in various OS-specific build files.
Replace project name in various documentation files.
Update the PO and POT files using the script.
Fix places where a `.desktop` file was used on Linux.
Replace title of project windows.
Make splash screen click through to `tenacityaudio.org`.
Remove ® from `AboutDialog.cpp`
Modify copyright message in `AboutDialog.cpp`

Signed-off-by: Emily Mabrey <emilymabrey93@gmail.com>
2021-07-20 19:46:29 -04:00
Emily Mabrey
7c41c9b2e4
Fix RevisionIdent.h generation (Issue #272)
Modify `cmake-proxies/cmake-modules/Version.cmake` to use `git show` properly.

Signed-off-by: Emily Mabrey <emilymabrey93@gmail.com>
2021-07-14 22:02:09 -04:00
Edgar
6a0855140e
🐛 Fixed building with ninja and MSVC 2021-07-09 13:54:43 +02:00
Peter Jonas
de2213ea2c Generate AppImage on GitHub Actions
Fixes #695. Supersedes #172. See https://appimage.org/.
2021-06-16 11:00:16 -04:00
Dmitry Vedenko
6da25e1646 Add targets for packaging DMG and InnoSetup
Fixes configure.sh

Fixes Windows code signing

Fixes an issue with conan cache on windows

Fixes build manual script

Fixes build manual

Remove unused props

Use long options

Yet another manual fix

Fixes iss
2021-06-16 05:07:31 -07:00
Vitaly Sverchinsky
e8b186a9b4 Crashreporting 2021-06-15 22:44:07 +03:00
Peter Jonas
4b5c95d7fe Move GitHub Actions CI scripts into separate files
Break the workflow into smaller stages (Configure, Build, Install,
Package, etc.) so that you can see exactly which stage failed in the
GitHub Actions run log.

Create a separate Bash CI script for each job stage (configure.sh,
build.sh, install.sh, package.sh, etc.) to reduce the size of the main
YAML workflow file and enable Bash syntax highlighting.

Close #917
2021-06-10 10:09:49 -07:00
Paul Licameli
4a2fc192e6 Bug2799: mod-script-pipe fails to load on Mac...
... This broke at commit 938bbeb with changes in CMake scripts.

This can be fixed by invoking CopyLibs.cmake for modules too.

This affects only the macOS build.
2021-06-09 15:06:21 -04:00
Paul Licameli
7346fdac69 Re-fix long Mac builds with many libraries, faster & more simply...
... Fix redundant "sh -c".  Combine many install_name_tool commands into one for
each library or executable.  Examine each with otool once only.
2021-06-09 15:06:21 -04:00
Paul Licameli
cf993fcded Revert "CopyLibs.cmake, for macOS: visit unique EDGES (not nodes)..."
This reverts commit e785c77226da1cb33f97557e905caf4a579fa318.
2021-06-09 15:06:21 -04:00
Paul Licameli
e2fda7df32 Better node names for 3p libraries in picture of dependencies 2021-06-09 15:06:21 -04:00
Dmitry Vedenko
185d1d5ecc Adds audacity_header_only_library 2021-06-08 08:08:26 -07:00
Paul Licameli
e785c77226 CopyLibs.cmake, for macOS: visit unique EDGES (not nodes)...
... in the graph of library dependencies.

Necessary to avoid crashes on startup loading dynamic libraries, but sufficient
to avoid excessive build times with many libraries.
2021-06-06 22:45:28 -04:00
Paul Licameli
e83c66ee50 Improve CopyLibs.cmake fix from 7d30537 for nonrecursive cases...
... When the graph of library dependencies is not recursive but complicated,
a combinatorial explosion of paths could make the post-build step not infinite
but very long (80 minutes in one of my experimental refactoring branches!)
2021-06-05 22:07:37 -04:00
Paul Licameli
7d30537374 Fix build time infinite recursion in CopyLibs.cmake 2021-06-03 09:40:48 -04:00
Dmitry Vedenko
1cd4bef4db Adds a workaround for Conan issue 8025, affecting libjpeg-turbo compilation on AppleSilicon Macs 2021-05-31 14:03:24 +03:00
Dmitry Vedenko
7c1f843322 Use libjpeg-turbo as a wxWidgets dependecy
Turns out, libjpeg is downloaded over plain HTTP from the official IJG site. It is now replaced with libjpeg-turbo.
2021-05-31 02:08:17 -07:00
Dmitry Vedenko
68bd49da87 Copy the library to the desired location after the build 2021-05-28 04:04:40 -07:00
Paul Licameli
fdd20452ea macOS builds: otool -D should not give absolute path of libraries 2021-05-26 06:18:42 -07:00
Dmitry Vedenko
4e6a1a81a9 Updates the way shared libraries are hadled
1. We put all shared libraries into one place. Both conan and locally built
2. We invoke CopyLibs to copy the libraries to a proper location and to correctly set the RPATH
Fixes CopyLibs script on Windows


Fixes CopyLibs.cmake for Linux

Fixes CopyLibs on macOS


Fixes CopyLibs on macOS
2021-05-26 12:46:45 +03:00
Dmitry Vedenko
733cf89cff Adds curl to the list of system libraries
Fixes macOS build with system libcurl
2021-05-26 12:46:45 +03:00
Dmitry Vedenko
45e4627ac9 Fixes PKG_CONFIG spelling 2021-05-26 12:46:45 +03:00
Dmitry Vedenko
851d8b2272 Add wxwidgets::base to a list of base modules 2021-05-26 12:46:45 +03:00
Dmitry Vedenko
3a04034d84
Use Audacity patched versions of libmad and libid3tag (#928)
* Use Audacity versions of libmad and libid3tag

* Properly setup zlib in libid3tag

* Fixes the wxBase target for system wxWidgets
2021-05-24 23:11:05 +03:00
Dmitry Vedenko
ad7faee418 Add wxBase, so the master will build fine 2021-05-24 06:53:53 -07:00
Dmitry Vedenko
8aca9d02de Add the first Conan-based dependecies
add_conan_lib cmake function is defined, that allows to add a dependency using Conan with two possible system fallbacks:

1. pkg_check_modules is invoked, if `PGK_CONFIG ...` is present
2. find_package is invoked if `FIND_PACKAGE_OPTIONS` is present and `pkg_check_modules` has failed

If `ALWAYS_ALLOW_CONAN_FALLBACK` is present - `obey_system_dependencies` will be ignored for the package

Currently, the following dependencies are retrieved using Conan:

* zlib
* expat
* wxwidgets
* libmp3lame
* libid3tag
* libmad

The last three libraries are included in this commit, as they depend on zlib.
Properly pass **arch** and **os.version** to Conan
2021-05-24 06:53:53 -07:00
Dmitry Vedenko
9c8185545d Adds an environment to check, how well Linux builds with system packages
A special mode `audacity_obey_system_dependencies` is added, so the build will fail if we could not build against a system package for some reason. 

The following packages are marked for the local build now:

* **wxWidgets**: Ubuntu lacks support for 3.1.3. We can't build against 3.0 branch.
* **portaudio**: there are issues, that prevent using a system version of portaudio.
* **sqlite3**: Ubuntu package is very dated; we care about the performance and stability.
* **nyquist**: Ubuntu has no package available.
* **vamp**: Ubuntu has no development package available.
* **portmixer**: Ubuntu has no package available.
* **sbsms**: Ubuntu package is very dated; we care about the performance and stability.

We use docker to create a clean build environment. Currently, `pkg-config` is used to locate the system libraries. There are few issues with `pkg-config` on Ubuntu:

* It does not work with `lame` and `portmidi`.
* The packaged files for `id3tag` and `mad` have wrong version.
We fix such cases by copying the 
into `/usr/local/lib`.
2021-05-24 06:53:53 -07:00
Paul Licameli
26217c22f1 Distinguish nodes in modules.dot.svg that depend directly on wxBase 2021-05-21 22:09:57 -04:00
Paul Licameli
5a362c308c Correct the placement of extension modules in the Windows build tree 2021-05-18 20:51:55 -04:00
Paul Licameli
42bddca151 Fix transitive dependencies via interface libaries 2021-05-18 00:21:48 -04:00
Paul Licameli
7cf78c15dc non-Win, non-Debug builds: strip module file symbols to save space...
... This only strips the symbols that do not have external linkage
2021-05-18 00:16:44 -04:00
Paul Licameli
dfbf3d25c1 Support for our own libraries, distinct from modules 2021-05-18 00:12:44 -04:00
Paul Licameli
b52192c4c4 Fix builds with precompiled headers, which broke at 794f4e5 2021-05-12 13:02:29 -05:00
Paul Licameli
d51f505cd9 Define Audacity version constants in CMake not Audacity.h 2021-05-10 00:05:23 -05:00
Paul Licameli
794f4e5877 Inclusion of the correct config header on command line using CMake 2021-05-10 00:05:23 -05:00
Paul Licameli
229b82a502 Move definitions of safenew, PROHIBITED, _DEBUG into CMake 2021-05-10 00:05:23 -05:00
Paul Licameli
29a657bc77 CMake function addlib can be called multiply for the same library 2021-05-06 09:15:22 -05:00