Commit Graph

360 Commits

Author SHA1 Message Date
Volker Grabsch 40fd96e236 Remove empty line at EOF 2015-01-11 18:10:50 -05:00
Volker Grabsch 8fb5da24f5 Merge branch 'stable' 2015-01-11 10:07:05 -05:00
Volker Grabsch 27d37c27e7 Add missing .PHONY entry for cleanup-style 2015-01-11 10:06:29 -05:00
Timothy Gu 47c3d0c170 Remove extraneous comma
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-12-14 12:55:27 -05:00
Timothy Gu 73898524ea Print config.log when build succeeded as well
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-12-14 12:53:57 -05:00
Tony Theodore fde591f2c4 Makefile: build targets in parallel
I was never really happy with the way targets are serialized, it's fighting against `make` (causing issues like #234 and #219), and the target header isn't particularly informative. This fixes #234 and should also provide a speedup when building all targets simultaneously.

Download rules are now pre-requisites of build rules to stop multiple download attempts, and all build logs have a target suffix.

More work is needed on #219, since download rules are always outdated unless a marker file is used. I'll look at this separately as I also want to allow script only packages.
2014-11-27 18:42:40 +11:00
Timothy Gu b06795b831 Add a $(BITS) convenience variable
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-11-16 22:25:19 -05:00
Tony Theodore a063f823e8 Makefile: remove check for pkg-config since we build pkgconf 2014-10-29 21:07:08 +11:00
Timothy Gu bcdc828e1c Fix display of "autodetected jobs" when $(JOBS) is set in settings.mk
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-20 22:22:00 -07:00
Timothy Gu df1b36c387 Show autodetected cores when no $(JOBS) is specified
If there is a more readable way of doing this, please point out.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-18 17:31:12 +00:00
Timothy Gu 9ebd3cedf7 update: Add "UPDATE_DRYRUN" mode
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 21:42:51 -04:00
Timothy Gu 981b2c1d9b Add message when i686-pc-mingw32 is used
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 23:48:09 +00:00
Timothy Gu 978fed72ed Fix target name check
This makes it error out when
    make MXE_TARGETS=i686-w64-mingw32.stati
etc.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 23:48:09 +00:00
Timothy Gu 0d612118bc build-matrix: Speed up with unary notation
4.6s -> 3.9s.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 19:46:31 -04:00
Timothy Gu d87240eb7b Remove i686-pc-mingw32
Fixes #400 and #492.

See #453.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 01:32:44 +00:00
Timothy Gu 30d33ef5db Fix counting of build-only packages
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 01:32:31 +00:00
Timothy Gu 2bf824b5a7 build-matrix: use $(words $(BUILD_PKGS)) instead of counting
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-14 01:32:29 +00:00
Timothy Gu 1f24f22085 build-matrix: Add missing </html>
Odd the W3C HTML5 validator didn't catch that (although the XHTML
1.1 one did).

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-13 04:32:05 +00:00
Timothy Gu 1ea2349833 build-matrix: make each tag a new line
Dunno how to fix the indentation, but this already looks way better
than before.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-13 04:21:49 +00:00
Tobias Gruetzmacher 67cd70bebb Add package versions to build-matrix.
This is a bit ugly at the moment, since there are some pretty long
version numbers in MXE...
2014-10-13 04:10:25 +00:00
Tobias Gruetzmacher c9bdb7adf6 build-matrix: Split huge command into smaller ones
Just outputting each line on its own doesn't impact performance that
much (7s to 7.5s on my system).

On my system: 3.5s -> 4.5s, which is not to bad. --TG

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-13 04:07:18 +00:00
Timothy Gu e8b457a582 Revert "build-matrix: use $(newline) instead of ; to enter command"
This reverts commits e21b7281 and f3a7e0f2d0.

The performance penalty is not worth it. On a relatively slow box
the time spent went from 4.6s to 15s.
2014-10-10 23:56:13 +00:00
TimothyGu e21b728194 build-matrix: use $(newline) instead of ; to enter command
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-10 23:31:03 +00:00
Timothy Gu f3a7e0f2d0 Partially revert "Make build matrix output a bit nicer."
I have found a better solution.

The change to check/cross sign is not reverted.

This partially reverts commit 3797d4eb03.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-10 23:16:54 +00:00
Tobias Gruetzmacher 3797d4eb03 Make build matrix output a bit nicer.
This swithes the "Y" and "N" in the cells with nice symbols (✓ and ✗).
This also tries to shorten the cammand line a bit since this still runs
into "Argument list too long" errors on some systems...
2014-10-09 20:02:23 +02:00
Tony Theodore 4835619559 Makefile: add $(BUILD) to allowed targets 2014-10-09 04:29:43 +11:00
Timothy Gu 8dbc665ea1 Check if specified target is valid
See #518.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-10-07 20:37:59 -07:00
Tony Theodore 500f27d10b Makefile: update default target to i686-w64-mingw32.static (see #492) 2014-10-03 13:49:09 +10:00
Timothy Gu c693d0496d Silent the echoing of comment in build-matrix.html
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-09-29 15:43:26 -07:00
Timothy Gu 93f5573c6f Explicitly disallow paths with whitespace
It didn't work anyway even before this commit.

Workarounds #490.
2014-09-03 20:31:55 -07:00
Timothy Gu 9279bedac0 Change default sf mirror to auto-select 2014-09-03 20:02:13 -07:00
Timothy Gu 3209c45566 Add MXE_NO_BACKUP_DL mode for regression testing
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-08-29 20:27:12 -07:00
Timothy Gu 30d2e78632 Add target download-only-* to ease developing
Signed-off-by: Timothy Gu <timothygu99@gmail.com>

Conflicts:
	Makefile
2014-08-29 17:13:24 -07:00
Timothy Gu 55558ecdd3 Add target download-only-* to ease developing
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-08-21 19:53:45 -07:00
Uwe Hermann fd1dc823ed Makefile: Add MXE_DISABLE_{PROGRAMS,DOCS,CRUFT}. 2014-08-21 18:29:49 +02:00
Timothy Gu 754f485bd2 Support .tbz2 and .txz
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-08-07 17:51:38 -07:00
Timothy Gu 8b2e5e1bac Fix GitHub update routine
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-08-01 19:41:37 -07:00
Timothy Gu b075a5ca1e Fix autoconf version test since b9c230dd
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-06-30 16:44:24 -07:00
Timothy Gu 77238e0175 Remove the usr/ directory in addition to its contents
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-06-27 11:48:00 -07:00
Tony Theodore 128adcdac8 Makefile: reduce wget timeouts and retries 2014-06-17 21:20:37 +10:00
Timothy Gu f341eb3780 Makefile: fix whitespace
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-17 11:40:05 -07:00
Timothy Gu 3a506a2c61 Merge branch 'native' 2014-05-15 19:36:42 -07:00
Tony Theodore 7e59569dcd Makefile: style cleanups 2014-05-12 01:17:36 +10:00
Timothy Gu 1eadfb66ec Makefile: style cleanup
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-10 14:22:46 -07:00
Timothy Gu 14375a38ff show-*deps-%: check if package exists before attempting to show deps
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-10 14:16:49 -07:00
Timothy Gu d632bcd7cb Use set_is_member from GMSL for $(PKGS)
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-10 14:09:15 -07:00
Timothy Gu 20969b9645 Fix per-target dep calculation
For example `make show-downstream-deps-winpthreads` didn't show any deps
even though i686-w64-mingw32.static target is set.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-09 20:48:54 -07:00
Timothy Gu d68838f924 Check all requirements before exiting on error
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-05 20:28:16 -07:00
Timothy Gu 1bf5679e1a Separate out native-only packages in build matrix (& cosmetics)
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-04 14:22:40 -07:00
Timothy Gu cc00a4b039 Count "virtual" packages seperately in total in build-matrix.html
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-03 16:51:10 -07:00
Timothy Gu 0f30d73e37 Add package count per target
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-05-02 17:49:30 -07:00
Timothy Gu 2b02ee7a90 Add build matrix generation target
Based on a patch by Tobias Gruetzmacher <tobias-git@23.gs> (@TobiX).

Fixes #346.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-29 20:37:23 -07:00
Timothy Gu 681921c815 Increase $(BUILD_PKG) accuracy by checking build rules
This eliminates false-positive with packages with explicit empty build rules
like binutils. gcc is another false-positive, but it is another matter and is
harder to fix.

Also use set_create function from GMSL to make the list sorted and uniq'd.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-29 18:54:05 -07:00
Timothy Gu b7ef1855fc Move up LOOKUP_PKG_RULE
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-29 18:54:05 -07:00
Timothy Gu 5eccb2f4db Move whitespace variables up to where all the other variables are
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-26 11:25:30 -07:00
Tony Theodore a90a7252e2 silence deprecated target name warning for build-requirements 2014-04-22 19:13:17 +10:00
Tony Theodore 89a6f46b21 add requirements for gperf python ruby 2014-04-22 18:21:52 +10:00
Tony Theodore 6d6e255dbf Merge pull request #359 from TimothyGu/temp-rem
Add convenience target clean-junk
2014-04-15 19:46:21 +10:00
Timothy Gu 130116224d Squalch deprecated target name warning for build-requirements
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-11 17:24:36 -07:00
Timothy Gu c155dd7c8d Merge commit 'd3adb06a1383a1454e95d58400c520454a61a716' 2014-04-10 21:41:07 -07:00
Timothy Gu b89c4d4703 Add documentation for default settings.mk
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-10 21:40:27 -07:00
Timothy Gu d3adb06a13 Sort $(MXE_TARGET_LIST) by triplets instead of lib types
Nothing in the Makefile is affected else than the generation of default
settings.mk.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-04-09 18:22:15 -07:00
Timothy Gu 6a099a0403 Add convenience target clean-junk
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-03-26 19:15:15 -07:00
Timothy Gu 8d877bdc75 Always symlink to log/PKG_TARGET
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-03-20 19:59:40 -07:00
Timothy Gu 99aea29c01 Use tmp-PKG-TARGET as temporary dir
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-03-20 19:59:40 -07:00
Timothy Gu 97402e08de Make download-* targets display "[download] *" instead of log
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-03-10 18:34:19 -07:00
Tony Theodore 0ff238e882 Makefile: add support for make-shared-from-static tool with default args 2014-03-10 13:33:47 +11:00
Tony Theodore 801cda3b53 Makefile: add MXE_VERBOSE variable to echo full logs
closes #309 and resolves #299
2014-02-12 19:41:57 +11:00
Tony Theodore 723241e085 Makefile: speedup LOOKUP_PKG_RULE function
Use gmsl `memoize` function and associative arrays to cache results
2014-02-12 16:00:21 +11:00
Tony Theodore c950f3635c various packages: enable shared builds 2014-02-10 16:33:26 +11:00
Tony Theodore 837ecd6648 Makefile and pkgconf: move external tools separate directory 2014-02-10 02:47:16 +11:00
Tony Theodore 47361fa750 Makefile docs and pkgconf: add support for shared|static variants 2014-02-09 18:34:19 +11:00
Tony Theodore 5a18b2786b Merge pull request #320 from tonytheodore/lookup-pkg-rule
Makefile: refactor lookup of pkg build rules and deps
2014-02-09 03:34:47 +11:00
Tony Theodore 4bba59627e Makefile: refactor lookup of pkg build rules and deps
Introduces a LOOKUP_PKG_RULE function that matches generic rules
from targets specified along the lines of:

triplet.lib-type.debug.treading.exceptions.my.experimental.version

Current build rules will be matched according to the current logic
(pkg-target --> pkg) and future variants can use "targets" as both
functionality determinants and a directory separator for multiple
side-by-side variants.
2014-02-09 00:11:19 +11:00
Tony Theodore 1a9ad29fe6 mxe configury: build native pkgconf and centralise various conf files
Since we need pkgconf for Cflags.private support, it seems like a
logical place for these types of config files instead of being
spread over Makefile, binutils, and gcc.
2014-02-08 23:23:00 +11:00
Tony Theodore 5fd5e9bbec Makefile and docs: add GNU Make Standard Library 2014-02-08 22:43:13 +11:00
Tuukka Pasanen 9fafc0b3fc Add MXE-wide dependency for autopoint to full fill package xine-lib requirements 2014-01-28 16:08:16 +11:00
Tony Theodore e17929f62d Revert "Add MXE_VERBOSE variable"
This reverts commit 56a8b1c202.
2014-01-15 00:46:47 +11:00
Timothy Gu 56a8b1c202 Add MXE_VERBOSE variable
Define to view full and not `tail`'d log if building fails at build time.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-01-02 11:07:45 -08:00
Niels Kristian Bech Jensen e80e2aae74 Makefile and docs: update automake version requirement
Conflicts:
	Makefile
2013-12-26 14:16:09 +11:00
Niels Kristian Bech Jensen b6bde6e9d3 update automake version requirement 2013-12-26 13:30:54 +11:00
Tony Theodore acacfb4e1c Merge branch 'stable'
Conflicts:
	Makefile
2013-12-04 17:22:05 +11:00
Tony Theodore 37c6bfca7a Makefile and docs: require automake 1.12 or later 2013-12-04 17:16:05 +11:00
Timothy Gu d915ffa01f Add update-package-% target 2013-11-29 14:37:25 -08:00
Tony Theodore 6051122254 Makefile: allow bypassing check-requirements 2013-10-19 22:58:11 +11:00
Tony Theodore f488a011f1 Makefile: fix config.guess install 2013-09-12 17:28:51 +10:00
Tony Theodore bc6104ccca Makefile: move config.guess install from binutils 2013-09-12 17:25:13 +10:00
Tony Theodore 283449db45 Makefile: don't exit on failed download (failed checksum will exit) 2013-09-08 00:07:59 +10:00
Tony Theodore cd9425517b Makefile: add explicit failed download message 2013-08-27 19:04:33 +10:00
Tony Theodore 368150f334 Makefile: use cut instead of sed for env var list 2013-08-27 18:42:27 +10:00
Tony Theodore 35b8cdb8ad Makefile: add proxies to env whitelist 2013-08-27 18:18:13 +10:00
Tony Theodore e42592bb78 Makefile: remove extraneous backslash 2013-08-26 01:00:43 +10:00
Tony Theodore 82edf6dda8 Makefile: add build-requirements goal for optional native builds 2013-08-25 21:34:27 +10:00
Tony Theodore 6ab49b639e Merge pull request #228 from tonytheodore/deps
Makefile and docs: add EXCLUDE_PKGS and show*deps* functionality
2013-08-25 03:09:10 -07:00
Tony Theodore 58351a7b23 Makefile: remove TARGET dependencies on BUILD - keep optional for time being 2013-08-25 19:43:42 +10:00
Tony Theodore 08647cc045 Makefile: add BUILD variable and add to target loop and PATH 2013-08-25 19:06:40 +10:00
Tony Theodore 143ae3c63f Makefile and docs: add EXCLUDE_PKGS and show*deps* functionality 2013-08-21 01:18:34 +10:00
Tony Theodore 87cf91e5e1 Makefile: use a minimal whitelist of env vars 2013-08-12 16:08:55 +10:00
Tony Theodore 14cf095b76 Makefile: create marker directories so --touch works on clean tree 2013-08-08 18:15:28 +10:00
Tony Theodore 16a27abaf0 Makefile: add missing separator to find command 2013-08-07 21:20:17 +10:00