Commit graph

104 commits

Author SHA1 Message Date
Blaž Hrastnik 7b768be784 Shallow clone submodules. (#5279)
There's no need to fetch the entire submodule history if we only need the latest revision. Speeds up the download a fair bit.
2019-03-08 07:58:40 -08:00
fauxpark 612dc232d7 Add distclean target instead 2019-02-05 09:49:24 -08:00
fauxpark 6172273c86 These targets should be .PHONY 2019-02-05 09:49:24 -08:00
fauxpark cb1aeb4254 make clean should remove .bin and .hex too 2019-02-05 09:49:24 -08:00
zvecr 9f63cd0d1d Remove duplicate make invocations 2019-01-30 21:42:23 -05:00
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 6fc43ddaf6.

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