Commit graph

100 commits

Author SHA1 Message Date
Peter Jonas
18f8578810 ONE BUILD SCRIPT TO RULE THEM ALL!
Adds a cross-platform script that automates the process of creating a
build directory and compiling MuseScore. Run the script like this:

    $ cmake -P build.cmake [args...]

This works in all shells on all platforms. Developers with a Unix-like
environment (including Git Bash on Windows) can also use:

    $ ./build.cmake [args...]

Build step arguments:

    clean       Delete the build directory.
    configure   Create a build directory and run CMake inside it.
    build       Compile code using the native build tool.
    install     Copy compiled files to final destinations.
    run         Run the installed program.

Each step implies all previous steps except 'clean' and 'run', which
are only performed when explictly requested. If no steps are given then
the configure, build, and install steps are performed by default.

All other arguments are passed to CMake during configuration.

Example command:

    $ cmake -P build.cmake -GNinja -DCMAKE_BUILD_TYPE=Debug
    $ cmake -P build.cmake -GNinja -DCMAKE_BUILD_TYPE=Debug run -F

This creates and installs a Debug build using the Ninja generator, and
then runs the compiled program with the -F option to perform a factory
reset, thereby ensuring it is in the initial state.

Overrides:

If you frequently need to build with non-default settings then you can
create a file build_overrides.cmake with all your personal settings to
avoid having to pass them in on the command line each time.

    # build_overrides.cmake example file

    set(ENV{QTDIR} "$ENV{HOME}/Qt/5.15.2/gcc_64")
    list(APPEND CONFIGURE_ARGS -GNinja -DCMAKE_BUILD_TYPE=Debug)

This file is ignored by Git to prevent it being shared with other
developers, but you could always copy another file into its place
(e.g. during a CI build on GitHub Actions).
2021-03-05 12:30:31 +02:00
Igor Korsukov
bfd75feec3 added run utest job on CI 2020-12-18 12:47:39 +02:00
Igor Korsukov
0baf9275cf removed include all.h 2020-12-07 16:08:40 +03:00
Igor Korsukov
026af211e1 rework root cmake project 2020-12-05 12:04:43 +03:00
Igor Korsukov
1220175bbc returned jack dependency 2020-12-04 13:13:09 +02:00
Igor Korsukov
e5e3498392 removed lame dependency 2020-12-04 13:13:09 +02:00
Igor Korsukov
5a8bb0f1e0 removed build_mu4 define 2020-12-03 10:36:25 +02:00
Igor Korsukov
f29773b1cb removed jack defines 2020-12-02 21:16:58 +02:00
Igor Korsukov
1dfee43c63 removed pulseaudio defines 2020-12-02 21:16:58 +02:00
Igor Korsukov
593bcc6236 removed alsa defines 2020-12-02 21:16:58 +02:00
Igor Korsukov
5af55a5808 removed portaudio 2020-12-02 21:16:58 +02:00
Igor Korsukov
d77fdfbe9d added symbols upload to Sentry on CI 2020-12-01 17:11:13 +02:00
Igor Korsukov
bfd8228344 sync CI build scripts with 3.x 2020-11-17 10:10:22 +00:00
Igor Korsukov
cffade8f21 sync CI scripts from 3.x to master 2020-11-09 09:19:54 +02:00
Roman Pudashkin
b2068d9f1a added option for disabling zita reverb 2020-11-06 08:57:45 +02:00
Igor Korsukov
cbd51267d5 removed revision h file 2020-10-30 14:01:14 +02:00
Igor Korsukov
722c2fcc00 added ccache for build Linux on CI 2020-10-29 10:34:23 +02:00
Igor Korsukov
b5190c58b7 added build vst module on CI 2020-10-27 09:38:23 +02:00
Igor Korsukov
d81bf26f4d switched on mu4 by default 2020-10-20 10:42:55 +02:00
Igor Korsukov
2ccb496afe added run utests 2020-10-19 21:09:40 +02:00
Igor Korsukov
35fd50f049 added build two modes (mu3 and mu4) on CI 2020-09-19 15:19:04 +02:00
anatoly-os
1dbb8131ba fix version concatenating to the MuseScore*.zip source code archive 2020-07-10 01:58:00 +03:00
Joachim Schmitz
2c7cd5bb9d Change Linux Makefile to match the Windows and Mac ones
follow up for PR #5928 and just for consistency.
Also improve the syntax for all 3.
2020-04-20 12:11:59 +02:00
anatoly-os
27a67272a7
Merge pull request #5621 from dmitrio95/build-version-config
Simplify version-specific configuration in build scripts
2020-04-07 21:43:45 +02:00
Marlon Volganli
39c53b41a1 rebase + isolate gp7-specific code 2020-03-27 13:41:24 +01:00
Dmitri Ovodok
f3ce93bc5f Fix a typo in Makefile from 0b37675892 2020-03-12 14:41:31 +02:00
Dmitri Ovodok
dafff7c7c0 Correct a typo in Makefile from 0b37675892 2020-03-11 15:37:14 +02:00
Dmitri Ovodok
86b545fa31
Merge pull request #4399 from eridal/add-missing-build-vars
Add missing build variables
2020-03-11 15:33:11 +02:00
Dmitri Ovodok
29e5a76965 Simplify version-specific configuration in build scripts 2020-02-07 13:31:24 +02:00
anatoly-os
d087c12ee3 update master to 3.5 2020-02-07 11:59:29 +02:00
Dmitri Ovodok
9003987bb3 Adjust build configuration for telemetry on Linux and Mac 2019-12-25 12:15:58 +02:00
luz.paz
f31624d746 fix various typos
* Found via `codespell -q 3 -S ./share/locale,./thirdparty -L ba,cann,clas,dur,foto,iff,nd,ois,ot,pres,possibile,snaped,strack,tage,te,uint,thru,valu`  
* Some revisions made per feedback given during review.
* Follow-up typos for review  
* Add revisions per feedback
2019-12-19 06:13:30 -05:00
anatoly-os
912b65c03f update master to version 3.4.0 2019-12-03 15:16:37 +02:00
anatoly-os
d86b76d166 update version on master to 3.3.3 2019-11-15 17:15:10 +02:00
Dmitri Ovodok
39ef4d5317
Merge pull request #5200 from shoogle/appimage
[WIP] AppImage: improve build scripts
2019-11-09 14:33:31 +02:00
anatoly-os
b6fac5eac5 Set current version for master to 3.3.1
Most of the new merged PRs will go to 3.3.1, not 3.3.0
2019-10-28 09:56:09 +02:00
Peter Jonas
684f641b80 AppImage: Improve build scripts
- fix #279707 automatic updates on Linux
    - except for Nightly Builds as this would require
      changes on the Nightly server (see PR #4757)
- fix #271232 create type2 AppImage
- Bundle with linuxdeploy
- Shared Recipe for all architectures

linuxdeploy detects library dependencies and automatically puts
them in the AppImage. This makes the copy-libs scripts redundant.
2019-07-11 06:29:37 +01:00
anatoly-os
d2d40fbe81 switch master to version 3.3
Increase clone depth to 50 to align with Travis jobs. It is time now because the issue with free space on AppVeyor was solved.
2019-07-09 12:22:59 +02:00
anatoly-os
ec5d7eb806 update version to 3.2
Sticking introduces the incompatibility with the previous version, so we need to update the minor version
2019-06-17 13:44:38 +02:00
anatoly-os
ae34c1c478 update master to 3.1 version 2019-02-07 10:57:07 +02:00
anatoly-os
202d0ca1a7 update MuseScore to 3.0.3
Stop pushing new strings to Transifex
2019-01-29 23:20:32 +02:00
anatoly-os
4da0677523 Update version to 3.0.2
stop pushing strings to Transifex
2019-01-21 10:25:44 +02:00
anatoly-os
45b9fb8488 update the url to get updated languages 2019-01-10 14:32:30 +02:00
Martin Scotta
0b37675892 Add missing build variables
The current Makefile does not allow to override the `BUILD_ALSA` and
`BUILD_PORTMIDI` from the command-line.

This change will allow developers to execute:

```sh

make BUILD_ALSA=OFF BUILD_PORTMIDI=OFF

```
2018-12-14 15:46:50 -03:00
lasconic
17c550fd62 expose BUILD_WEBENGINE to Makefile 2018-11-16 19:31:13 +01:00
mirabilos
65cd276439
remove RCS IDs from (almost) all files
they do not make any sense, nor do they get updated, if the
source code is kept in git
2018-11-02 23:53:21 +01:00
lasconic
6f2d96b4e9 fix #267644: Add auto updater to MuseScore development versions 2018-07-19 16:12:48 +02:00
lasconic
459af64d2e [Travis-CI] Zip and upload source code, soundfont, revision.h for stable release 2018-03-19 20:41:16 +01:00
lasconic
1d7280c694 Replace FluidR3Mono_GM by MS_General and don't store SoundFont on git anymore 2018-03-14 15:02:31 +01:00
Jarrad Whitaker
fe3e0875ee cmake COVERAGE option to enable gcov instrumentation 2017-12-19 15:31:39 +01:00