99 Commits

Author SHA1 Message Date
leico
2e0c63e0af improve looks like hang up when first time execute make git-submodule (#3846) 2018-09-10 16:21:54 -07:00
Fredric Silberberg
bbecd276d2 Correct parsing of rules.mk for keyboard revisions
Previously, when looking for rules.mk files, we'd parse the individual
folders (A/B/C/D/E) into 5 variables, (A/B/C/D/E, A/B/C/D, A/B/C, A/B,
and A). Then, we'd get the final directory names and store _those_ in 5
new variables (A, B, C, D, and E). Then, when looking for the rules.mk,
we'd look in root_dir/keyboards/(A|B|C|D|E)/rules.mk, instead of looking
in root_dir/keyboards(A|A/B|A/B/C|A/B/C/D|A/B/C/D/E)/rules.mk. This
commit changes that logic from the former to the latter.
2018-07-17 00:10:42 -04:00
Sebastian
ce3adcd6e1 Added a clean target to remove build artifacts
This commit adds a new clean target to the makefile which deletes
the .build directory which removes all build artifacts.
2018-03-16 16:44:22 -04:00
Jack Humbert
eac4bab342 update version silencing 2017-11-14 22:56:29 -05:00
Jack Humbert
cb64a886e9 update travis script 2017-11-14 22:14:59 -05:00
Jack Humbert
bd642d08ab add note to makefile for future use 2017-10-15 16:54:06 -04:00
Jack Humbert
32f18cf616 fix up default keymaps and remove keyboard folder filter 2017-10-15 16:44:31 -04:00
Jack Humbert
800ec55dfc Make arguments redo, subproject elimination (#1784)
* redo make args to use colons, better folder structuring system [skip ci]

* don't put spaces after statements - hard lessons in makefile development

* fix-up some other rules.mk

* give travis a chance

* reset KEYMAPS variable

* start converting keyboards to new system

* try making all with travis

* redo make args to use colons, better folder structuring system [skip ci]

* don't put spaces after statements - hard lessons in makefile development

* fix-up some other rules.mk

* give travis a chance

* reset KEYMAPS variable

* start converting keyboards to new system

* try making all with travis

* start to update readmes and keyboards

* look in keyboard directories for board.mk

* update visualizer rules

* fix up some other keyboards/keymaps

* fix arm board ld includes

* fix board rules

* fix up remaining keyboards

* reset layout variable

* reset keyboard_layouts

* fix remainging keymaps/boards

* update readmes, docs

* add note to makefile error

* update readmes

* remove planck keymap warnings

* update references and docs

* test out tarvis build stages

* don't use stages for now

* don't use stages for now
2017-10-14 11:32:19 -10:00
skullydazed
4cdcbdb861 Remove all Makefiles from the keyboards directory. (#1660)
* Remove all Makefiles from the keyboards directory.

* update keymaps added in the last 8 days

* Ignore keyboard/keymap makefiles

* update hand_wire to reflect our new Makefile-less reality

* Update the make guide to reflect the new reality

* move planck keymap options to rules.mk

* update planck keymaps 4real

* trigger travis

* add back build_keyboard.mk

* restore changes to build_keyboard
2017-09-08 13:47:50 -04:00
skullY
927ef81363 Revert "Remove the "lib/%" rule."
This reverts commit 6fc43ddaf6048edc67c00ea258ffbbcbded631b0.

I didn't think this through before pushing it.
2017-09-06 21:09:08 -07:00
skullY
6fc43ddaf6 Remove the "lib/%" rule. 2017-09-06 21:04:29 -07:00
skullydazed
2b3803eb5e Clone chibios and ugfx if it's not already checked out. (#1651)
* Clone chibios and ugfx if it's not already checked out.

* update the submodule out of date message
2017-09-06 15:21:31 -07:00
skullY
ed56a6859f add a git-submodule make target. 2017-08-28 11:26:35 -04:00
Jack Humbert
d2ff66a985 Creates a layouts/ folder for keymaps shared between keyboards (#1609)
* include variables and .h files as pp directives

* start layout compilation

* split ergodoxes up

* don't compile all layouts for everything

* might seg fault

* reset layouts variable

* actually reset layouts

* include rules.mk instead

* remove includes from rules.mk

* update variable setting

* load visualizer from path

* adds some more examples

* adds more layouts

* more boards added

* more boards added

* adds documentation for layouts

* use lowercase names for LAYOUT_

* add layout.json files for each layout

* add community folder, default keymaps for layouts

* touch-up default layouts

* touch-up layouts, some keyboard rules.mk

* update documentation for layouts

* fix up serial/i2c switches
2017-08-23 22:29:07 -04:00
Jack Humbert
88198a9606 move qmk version to very top, exclude when git isn't available 2017-08-10 18:54:14 -04:00
Jack Humbert
26d348b6d1 move version info to the top of the output 2017-08-08 16:06:45 -04:00
Fred Sundvik
20696a9efe Fix building of multiple test directories 2017-07-20 10:17:31 -04:00
Fred Sundvik
1ff5fb000f Fix Makefile error_occured output for unit tests 2017-07-10 09:00:58 -04:00
Fred Sundvik
30f22d450d Add basic infrastrucure for building full tests 2017-06-18 21:08:23 +03:00
Fred Sundvik
738b8d2b9c Add SKIP_VERSION option to speed up compilation 2017-04-13 16:00:29 +03:00
Fred Sundvik
224fc8a20f Add makefile option to break on errors 2017-04-13 16:00:29 +03:00
Osamu Aoki
f787f4291a Typo fixes 2017-02-02 23:15:08 +09:00
Jack Humbert
a28f689387 Merge pull request #869 from dylanjgscott/master
Use `type cmp` to test for cmp in Makefile
2017-01-27 11:23:02 -05:00
Dylan Scott
245f77b863 Compare Makefile with itself instead of using --help 2017-01-24 13:53:46 +11:00
Fred Sundvik
1d1f2b4ee2 Clean up the SKIP_GIT code 2016-12-29 15:20:43 +02:00
Fred Sundvik
2acfd2ab2b Remove extra parenthesis from Makefile
Cygwin had trouble running the tests
2016-12-29 14:56:01 +02:00
IBNobody
78976d8f7a Adding SKIP_GIT to speed up compiles. 2016-11-01 11:52:58 -05:00
Fred Sundvik
d956dd1248 Run each sumbmake in a separate shell
This will fix the situation where the commandline gets too long when
there are many keyboards and keymaps.
2016-10-30 17:03:01 +02:00
Fred Sundvik
6410f0c021 The all target makes all keyboards and all tests 2016-08-27 21:57:49 +03:00
Fred Sundvik
1b963117fe Support for running and cleaning all tests 2016-08-27 21:57:49 +03:00
Fred Sundvik
7eefb34e7c Detect failures when running multiple tests
Also add better output.
2016-08-27 21:57:49 +03:00
Fred Sundvik
fc855cb30e Fix running multiple tests 2016-08-27 21:57:49 +03:00
Fred Sundvik
f4429ba48c Running of unit tests
But only if the compilation has succeeded
2016-08-27 21:57:49 +03:00
Fred Sundvik
27a673f5cf The makefile actually calls build_test 2016-08-27 21:57:49 +03:00
Fred Sundvik
6d7cd639a5 Basic framework for parsing test targets 2016-08-27 21:57:49 +03:00
Fred Sundvik
7c9fff59d0 Fix slight inconsistency
When running make from either a keyboard folder or a subproject
it runs all keymaps for all subprojects and the selected subproject
respectively. Without this fix, the same doesn't happen if your
run make clean for example. As it would just provide you with an
error message. Now this will work as expected.
2016-08-24 10:29:01 +03:00
Fred Sundvik
1c69acb7d5 Add longest match to the rule-checking
This fixes cases where you have several keyboards with a common
prefix, like algernon, and algernon-master
2016-08-21 13:10:34 +03:00
Fred Sundvik
b26ded3ab1 Comment the Makefile
Also move some messages to message.mk
2016-08-20 14:53:29 +03:00
Fred Sundvik
f29730da36 Better format for non-silent output 2016-08-20 03:56:44 +03:00
Fred Sundvik
03e31ef8b9 Continue on error 2016-08-20 03:56:43 +03:00
Fred Sundvik
87bf34a5d3 Pass the target to submake 2016-08-20 03:56:38 +03:00
Fred Sundvik
d924eb591e Fix variable name clash with builtin
This caused the submake to be called several times, messing up the
build.
2016-08-20 03:56:37 +03:00
Fred Sundvik
8732265928 Options for silent compilation
A single keyboard is always by default compiled in verbose mode.
While multiple keyboards are compiled in silent mode. This can be
overriden by the silent variable from the command line
2016-08-20 03:56:36 +03:00
Fred Sundvik
e4c842de02 Don't run builtin rules for submake
To speed up the compilation
2016-08-20 03:56:35 +03:00
Fred Sundvik
881bde8258 Fix running make in parallel 2016-08-20 03:56:34 +03:00
Fred Sundvik
60c6e79ecb Move git submodule check and version generation to main Makefile 2016-08-20 03:56:32 +03:00
Fred Sundvik
67b294ca66 Actual compilation 2016-08-20 03:56:30 +03:00
Fred Sundvik
db5c3b74fb Add color output 2016-08-20 03:56:29 +03:00
Fred Sundvik
0dd629a990 Fix running make from various subfolders 2016-08-20 03:56:28 +03:00
Fred Sundvik
a04bb3a3ba Fixed the shortcut targets 2016-08-20 03:56:27 +03:00