Commit Graph

41 Commits

Author SHA1 Message Date
patrick96
3652d5fe0d cmake: Stop using CMAKE_* variables for flags
It is not recommended anyway and the -Werror flag set in CI was getting
set when compiling gtest, breaking our build.
2021-07-11 14:47:26 +02:00
patrick96
c24a6999a4 refactor(cmake): Allow targets to be enabled individually
Each major target of polybar can now be enabled/disabled while
configuring (even polybar itself).

The cmake code specific to each target will only run if the target is
enabled.

This allows us to for example just build the documentation without
having to run all the cmake code related to compilation or having the
polybar dependencies installed (other than sphinx).
2020-12-24 02:20:38 +01:00
patrick96
1dc8d2f30e cmake: Make xrandr and xcomposite required
They were required before, but could technically be deactived (the
compilation would fail, but configuration was possible).

The WITH_XRANDR and WITH_XCOMPOSITE now no longer appear in the cmake
part. It still appears in the source code, but is always set to 1

Fixes #1536
2020-12-22 00:37:07 +01:00
patrick96
1c554dd0e0
Merge branch 'hotfix/3.5.1' 2020-12-12 13:28:57 +01:00
patrick96
cf739ed295 ci: Use github actions 2020-12-12 01:43:12 +01:00
Patrick Ziegler
1168ef36a0
github: Add action to create release archive (#2277)
Whenever a release is published, this action will create a release
archive and update the release body with a download section.

This also integrates the suggestions from #2276

Resolves #2276
2020-12-06 18:16:17 +01:00
patrick96
bb3647ff8d Add script to create release archives 2020-11-22 23:32:41 +01:00
patrick96
bffec3d8f2 travis: update to bionic
Now we don't have to build xcb-xrm ourselves since it's available in the
repos
2019-10-26 22:28:47 +02:00
patrick96
9103d232a5 build: Remove -Werror
Whenever a new gcc version is released that introduces new warnings,
this breaks lots of builds on the user's side. This change pushes the
detection of these new warnings a bit back until either a user reports
warnings or developers get the new compiler updates. I think this is a
good tradeoff since release builds are no longer totally broken as soon
as a new compiler version comes out.

Travis still uses -Werror because there we actually want builds to fail.
2019-05-08 12:23:48 +02:00
patrick96
0251a80e75 build: Remove C compiler
There isn't a single .c file in the project. It just added bloat
2019-04-08 09:01:48 +02:00
patrick96
1ed8ddd251 travis: Disable doc generation
Travis doesn't have sphinx installed by default and it's also the wrong
version for our documentation
2019-04-05 23:43:37 +02:00
patrick96
fc2d2db76f refactor(cmake): Determine version in cmake
We need to have the version string available in multiple places not just
the source code. It is now hardcoded in the root CMakeLists.txt and all
files that need it will be configured with cmake.

This also removed the unecessary duality of GIT_TAG and APP_VERSION and
GIT_TAG_NAMESPACE and APP_VERSION_NAMESPACE.
2019-04-05 23:43:37 +02:00
patrick96
286eac393c tests: Build and run all tests with make check
Simplifies the building and running of tests

Also exports the proper env variables so that the googletest output is
colored

ctest can use env variables for some of its options so we can for
example run
  CTEST_PROGRESS_OUTPUT=1 make check
to run ctest with the --progress flag

This also makes the travis test.sh script obsolete
2019-01-20 15:11:14 +01:00
patrick96
ea5fc22c7d travis: Upgrade to xenial
This travis environment contains more up-to-date versions of clang and
gcc (namely 7.0.0 and 5.4.0). This allows us to remove all the code used
to get those newer versions in trusty.

Ref: https://docs.travis-ci.com/user/reference/xenial/
2019-01-08 17:15:06 +01:00
patrick96
973f925ad7 fix(travis): Fail tests if build fails 2018-07-22 14:02:15 -07:00
patrick96
747cdfe7f5 refactor(travis): Add minimal build configuration
Uses none of the optional dependencies. This ensures that polybar can
build without any of the supposedly optional dependencies. This would
have detected the cause of the xrm build failure before it was merged
2018-06-18 11:49:31 +02:00
patrick96
72948dbc97 fix(clang): Search for files in right places
Before, because of [ -d "$search" ] || search="$(dirname "$search")",
clang-format.sh would search for files to format in the whole repo
(even in the build directory and the submodules)

This now also looks for source files in the tests folder

I have removed the clang-format from clang-tidy.sh because one may want
to run clang-tidy without reformatting
2018-05-20 16:37:18 -07:00
patrick96
3c0732ac2a fix(travis): no xrm build failure
install_xcb_xrm.sh takes advantage of the travis cache but it doesn't
actually install the libraries on the system when it finds that the
compilation has been cached.
2018-05-18 22:17:42 -07:00
patrick96
6cee262225 travis: Move MAKEFLAGS to .travis.yml 2018-04-11 19:37:50 -07:00
patrick96
a8234ddd4e travis: Don't install specific compilers
clang is already installed in travis' trusty environment

Should decrease build time quite a bit because we don't need to download
and compule libc++
2018-04-11 19:37:50 -07:00
patrick96
7b7498bde1 travis: Remove custom cmake
Travis provides cmake 3.9.2 ([1])

[1]:
https://docs.travis-ci.com/user/build-environment-updates/2017-12-12/
2018-04-11 19:37:50 -07:00
patrick96
d768c49980 travis: Separate compiling and testing 2018-04-10 00:56:51 +02:00
NBonaparte
17f1f19012
fix(bump.sh): remove references to .SRCINFO (#884) 2017-12-03 15:35:30 -08:00
László Várady
8a98fb78b6 fix(version): Follow APP_VERSION in POLYBAR_NS 2017-01-29 15:16:00 +01:00
Michael Carlberg
501921ef12 build: Bump version to 3.0.3 2017-01-27 15:53:44 +01:00
Michael Carlberg
dc366079ae feat(build): Development tasks 2017-01-27 04:15:14 +01:00
Michael Carlberg
214b3ddca8 fix(ci): Deps cache 2017-01-25 15:21:58 +01:00
Michael Carlberg
b521ec737d fix(ci): Cache directory 2017-01-24 14:02:54 +01:00
Michael Carlberg
42a982a4a5 fix(ci): Cache cmake archive 2017-01-24 13:23:38 +01:00
Michael Carlberg
f974609fc5 fix(ci): Exit if make fails 2017-01-24 12:12:12 +01:00
Michael Carlberg
ca0d7345a1 fix(ci): Update travis 2017-01-20 05:15:58 +01:00
Michael Carlberg
f85e7c8f40 fix(ci): Build xcb-xrm 2017-01-20 03:30:03 +01:00
Michael Carlberg
70bb6f61d4 fix(ci): Use default build type 2016-12-23 17:15:13 +01:00
Michael Carlberg
1d53e7f454 fix(ci): Update libc++ install script 2016-12-15 21:32:05 +01:00
Michael Carlberg
5b544e9581 fix(ci): Match any clang binary 2016-12-15 20:22:42 +01:00
Michael Carlberg
6e53172739 fix(ci): Add build flags to summary output 2016-12-15 19:27:47 +01:00
Michael Carlberg
32fb7ad9bb fix(ci): Installpackages using the apt addon 2016-12-15 19:16:31 +01:00
Michael Carlberg
24c6e635a8 fix(ci): Update dependency list 2016-11-30 10:26:09 +01:00
Michael Carlberg
0128014d44 fix(cmake): Tidy and format commands 2016-11-25 14:17:57 +01:00
Michael Carlberg
510fe7261b fix(ci): Parallel build 2016-11-19 22:01:14 +01:00
Michael Carlberg
489d429644 refactor(ci): Split into scripts 2016-11-19 12:23:02 +01:00