incubator-couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benoit Chesneau <bchesn...@gmail.com>
Subject Re: [jira] [Created] (COUCHDB-1181) Provide a lean Windows makefile target by removing erlang cruft
Date Wed, 01 Jun 2011 13:08:41 GMT
On Wed, Jun 1, 2011 at 6:13 AM, Benoit Chesneau <bchesneau@gmail.com> wrote:
> On Wed, Jun 1, 2011 at 5:01 AM, Dave Cottlehuber (JIRA) <jira@apache.org> wrote:
>> Provide a lean Windows makefile target by removing erlang cruft
>> ---------------------------------------------------------------
>>
>>                 Key: COUCHDB-1181
>>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1181
>>             Project: CouchDB
>>          Issue Type: Improvement
>>          Components: Build System
>>         Environment: Windows
>>            Reporter: Dave Cottlehuber
>>            Priority: Trivial
>>             Fix For: 1.1.1
>>
>>
>> We should be able to get the build to 1/3 of current size. Thanks to @wohali via
IRC, and @daleharvey with android build https://github.com/daleharvey/build-android-couch/blob/master/build.final#L31
>>
>> The three major contributors to the 50+MB download & 120+MB windows installed
footprint are:
>>
>> 1. including all of OTP when a small portion is required to run CouchDB
>> 2. including all obj, src, include, examples components of required OTP libraries
>> 3. unneeded vc redist runtimes due to different build toolchains.
>>
>> Manual steps follow; I will work on extending build system later.
>>
>> 1. remove unneeded OTP libraries/apps
>> - remove all but following from $COUCH_TOP/lib
>> couch-*
>> crypto-*
>> debugger-*
>> erlang-oauth*
>> erts-*
>> etap*
>> ibrowse-*
>> inets-*
>> kernel-*
>> mochiweb-*
>> public_key-*
>> reltool-*
>> runtime_tools-*
>> sasl-*
>> ssl-*
>> stdlib-*
>> xmerl-*
>>
>> from %COUCH% do:
>>
>> cd lib
>> mkdir ..\stash ..\trash
>> for /d %i in (couch-* crypto-* debugger-* erlang-oauth* erts-* etap* ibrowse-* inets-*
kernel-* mochiweb-* public_key-* reltool-* runtime_tools-* sasl-* ssl-* stdlib-* xmerl-*)
do @echo %i && move "%i" ..\stash\
>> for /d %i in (*) do @move "%i" ..\trash\
>> for /d %i in  (..\stash\*) do @move "%i"
>> :: if you are brave rd /s/q ..\stash ..\trash
>>
>> 2. from %COUCH% run this:
>> cd erts* && rd /s/q include lib src
>>
>> --
> That something that could be handled with reltool :
>
> http://www.erlang.org/doc/apps/reltool/index.html
>
> Have a look here:
>
> https://github.com/refuge/refuge/blob/master/rel/reltool.config
>
> Which is a way to build release using rebar.
>
> - benoît
>

Mime
View raw message