Only pass extra link flags on OS X.

Fixes #3249
Merge pull request #3260 from metajack/fix-cef-linux

Only pass extra link flags on OS X.
Improve quality of font rendering on Linux (and Android).

The freetype hinting only works on integer pixel sizes. For this
reason, the advance width metrics for a font of size 12.99 are
the same as the advance metrics for a font of size 12.0. This
results in small fonts appearing to overlap slightly, which is
particularly noticeable on parts of Wikipedia. Round the font
size up to a pixel boundary inside the freetype system.

Also fetch the system default fonts for the generic font families
rather than hard coding them.

These two changes make the font rendering on Linux very close
to the Firefox font rendering on Wikipedia.
Define constant parameters strings as statics.
Pass --target option from mach to cargo
Fix typo in 'mach cargo --help'
Refactor python/tidy.py to not use globals. Fixes #3242
Cleaned up python/licenseck.py

- Moved logic into tidy.py
- Removed explicit BSD license exceptions, they are already ignored by
  being inside the codegen directory.
Update fontconfig

Picks up servo/libfontconfig#2.
Add glfw3 as a dep to the README.
Add note about installing glfw3 from source.
Use os.path.join instead of manually inserting slashes.
Remove reference to old extlibs dir
Merge pull request #3256 from glennw/font-fixes

Improve quality of font rendering on Linux (and Android).
Merge pull request #3264 from metajack/readme-glfw-deps

Add glfw3 as a dep to the README.
Remove needless rust-png dependency.
Update Arch Linux prerequisites now that cargoify has landed
Merge pull request #3267 from duncankl/readme-arch-linux-setup

Update Arch Linux prerequisites (updated post-cargoify)
Merge pull request #3262 from mbrubeck/cargo

Cargo fixes
Use virtualenv2 in tests/wpt/run.sh if installed