Commit Graph

66 Commits

Author SHA1 Message Date
Kevin Sawicki
91347f14f2 Build libgit2 with thread safe option enabled 2013-03-05 14:27:19 -08:00
Kevin Sawicki & Nathan Sobo
41e1ce4a09 Remove cson2json dependency
The latest release does not work because of CoffeeScript
changes so use a simple compile script to convert CSON
files to JSON files when buildilng.

Closes #348
2013-03-04 18:27:51 -08:00
Adam Roben
73e0b72479 Only source /opt/github/env.sh if needed
If node is already in PATH and functional, we don't need to spend a
bunch of time running all of Boxen's setup scripts.

This reduces clean build time on my MacBook Pro from 46 seconds to 31
seconds.
2013-03-04 11:52:51 -05:00
Adam Roben
83ee2d23b3 Use gyp's rules functionality to compile .coffee/.cson files
Instead of finding and compiling all .coffee/.cson files in
script/copy-files-to-bundle, we now tell gyp how to do this for us. It
works like this:

1. Rakefile invokes the new script/generate-sources-gypi script to
   generate sources.gypi. This file lists all the .coffee/.cson files in
   the src, static, and vendor directories, as well as a new
   compiled_sources_dir variable that specifies where the compiled
   versions of the files should be placed.
2. atom.gyp includes sources.gypi.
3. atom.gyp has a new target, generated_sources, which contains all the
   .coffee/.cson files, and uses two rules to tell gyp how to compile
   them. The rules invoke the new script/compile-coffee and
   script/compile-cson files once for each file.
4. gyp generates one Makefile for each rule to actually perform the
   compilation.
5. script/copy-files-to-bundle now takes the compiled_sources_dir
   variable as an argument, and copies files both from there and from
   the repository into the Resources directory.

By putting the compilation into a different target, we can do it in
parallel with compiling/linking our binaries. And gyp automatically runs
make using -j$(sysctl -n hw.ncpu), so compilation of .coffee/.cson files
happens in parallel, too.

These changes reduce clean build time on my MacBook Pro from 55 seconds
to 46 seconds.
2013-03-04 11:32:06 -05:00
Adam Roben
550cd8348c Echo commands in script/cibuild for debugging purposes 2013-02-27 14:38:05 -05:00
Corey Johnson
d07d59353e Remove atom.githubapp.com private key 2013-02-27 10:48:38 -08:00
Corey Johnson
e618850712 Update script/cibuild to work with the Mac Janky server 2013-02-27 10:47:53 -08:00
Kevin Sawicki
d35c871e17 Install atom executable during window.startup()
Previously this was done during `rake install`.

Also default to `~/github/atom` as the default resource path
when no `--resource-path` argument is specified.  This argument
will now be required when running in dev mode if the repository
is not at the default location.

Closes #300
2013-02-22 21:19:34 -08:00
Kevin Sawicki
b04c1ad766 Include dot-atom directory in bundle 2013-02-22 14:46:29 -08:00
Adam Roben
668921d336 Remove CEF from the repo and download it as needed
We now use github/prebuilt-cef to download CEF from S3, then build
against that. This means we no longer need to have CEF committed to the
repo.

Fixes #280.
2013-02-17 11:59:06 -05:00
Corey Johnson
e7a8e4e3c4 Add atom.update and atom.getUpdateStatus 2013-02-14 16:40:24 -08:00
Nathan Sobo
aeb1e3fd3c Add a script to fix the author w/ git-filter-branch 2013-01-30 16:53:36 -07:00
Corey Johnson & Nathan Sobo
493ed5f006 Merge branch 'web-workers' into dev 2013-01-28 15:02:57 -07:00
Corey Johnson & Nathan Sobo
1190644e76 Make update-cef script tolerate multiple cef binaries in chromium/src/cef 2013-01-28 14:52:45 -07:00
Kevin Sawicki
a8a1d09dac Output updated paths after changing id 2013-01-28 09:39:50 -08:00
Kevin Sawicki
fbfdd6ab65 Doc libgit2 build and verification steps in update script 2013-01-28 09:38:01 -08:00
Kevin Sawicki
97e808620e Copy themes folder to bundle 2013-01-17 16:50:25 -08:00
Kevin Sawicki
781f58e33a Precompile cson files to json 2013-01-17 16:50:25 -08:00
Kevin Sawicki
f1efc9ce60 Upgrade to latest libgit2 development branch 2013-01-04 14:57:14 -08:00
Kevin Sawicki
3e8913f518 Be quiet 2013-01-04 08:18:52 -08:00
Kevin Sawicki
b0d38d0ac7 Sync submodules before updating 2013-01-04 08:18:52 -08:00
Kevin Sawicki
4078046ac6 Vendor textmate bundles as submodules 2013-01-04 08:18:52 -08:00
Corey Johnson
d77fc88ff4 Merge remote-tracking branch 'origin/master' into config 2012-12-27 10:38:24 -08:00
Corey Johnson
83af57db41 cibuild removes ~./atom before running specs 2012-12-26 18:08:18 -08:00
Corey Johnson
e5e5c497e1 Load themes from ~/.atom/themes 2012-12-26 17:41:48 -08:00
Corey Johnson
207281aa1c Stole clean-merged-branches from github/github 2012-11-08 09:55:00 -08:00
Corey Johnson
80529c2f25 Uncommented needed lines in update-cef script 2012-11-08 09:51:30 -08:00
Corey Johnson
b436d9467e Enhance ./script/update-cef
It will now update or download a specific release of CEF and Chromium, compile CEF/Chromium, and copy the needed files to Atom.
2012-10-30 14:26:19 -07:00
Corey Johnson
540f651061 Only compile coffee files in src static and vendor 2012-10-26 15:36:15 -07:00
Kevin Sawicki
d58954145b Remove brew check
This was added for the gyp formula install
which has been removed
2012-10-18 16:04:43 -07:00
Will Farrington
fcc6795e83 no more custom gyp 2012-10-18 16:00:14 -07:00
Corey Johnson
0dfc57a98f add new build-bot private key 2012-10-16 09:44:31 -07:00
Corey Johnson
6ea19bc765 When building, only compile coffeescript if needed.
Also doesn't copy coffeescript files to bundle.
2012-10-15 11:49:19 -07:00
Corey Johnson
fbe9a8b671 Fail Xcode build if any coffeescript file fails to compile 2012-10-15 09:01:26 -07:00
Corey Johnson
49d270d4ec Taking the the gyp formula out of the formula directory
I'm a shallow directory fan, when we have more than one formula I'd be done with adding it back.
2012-10-12 09:25:51 -07:00
Kevin Sawicki
82af5e826c Use specific gyp revision 2012-10-09 12:06:27 -07:00
Kevin Sawicki
304d4f741e Exit unless brew exists 2012-10-09 11:51:28 -07:00
Kevin Sawicki
aa5b68e9a9 Install gyp via custom formula 2012-10-09 11:47:07 -07:00
Corey Johnson
e9e0e24ce3 make cibuild work on updated build machine 2012-09-27 11:38:15 -07:00
Corey Johnson
646d9778e5 npm, not np 2012-09-21 13:30:55 -07:00
Corey Johnson
27dbf5798b No longer being clever when compiling coffeescript 2012-09-20 15:48:18 -07:00
Corey Johnson
ece908a10a Make paths with spaces work with coffee compiler 2012-09-20 13:28:33 -07:00
Corey Johnson
981a6dff81 script/bootstrap verifies that Xcode and npm are installed 2012-09-19 17:42:36 -07:00
Corey Johnson
f624d2277e Compiling coffeescript is slow, so only compile the .coffee files if they are newer than the .js files
If a coffeescript file is deleted, this will not remove that file from the bundle. This is the source of a future bug that I'm hoping to avoid.
2012-09-19 16:08:26 -07:00
Corey Johnson
cb48ad9019 Add update-cef script 2012-09-18 15:00:03 -07:00
Corey Johnson
61c8068171 Add The Setup's env when Xcode copy files to bundle. 2012-09-17 15:35:55 -07:00
John Barnette
7fbb7b70e8 Stub script/bootstrap
Consistency is awesome. This should probably check for Xcode proper at
some point too.
2012-09-13 11:29:54 -07:00
Corey Johnson & Nathan Sobo
27d2d14414 Carry CEF1 directories over to CEF3 2012-08-31 10:43:21 -07:00
Nathan Sobo
c2c8724ad0 Initial commit 2012-08-10 13:32:19 -06:00
Corey Johnson
aed346cfcf Fail if the benchmarks fail 2012-05-15 17:00:54 -07:00