Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 5784 invoked from network); 4 Nov 2010 00:41:00 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 4 Nov 2010 00:41:00 -0000 Received: (qmail 25853 invoked by uid 500); 4 Nov 2010 00:41:31 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 25815 invoked by uid 500); 4 Nov 2010 00:41:31 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 25807 invoked by uid 99); 4 Nov 2010 00:41:31 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Nov 2010 00:41:31 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of kungfooguru@gmail.com designates 209.85.215.180 as permitted sender) Received: from [209.85.215.180] (HELO mail-ey0-f180.google.com) (209.85.215.180) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Nov 2010 00:41:25 +0000 Received: by eyx24 with SMTP id 24so845449eyx.11 for ; Wed, 03 Nov 2010 17:41:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:content-type; bh=g1RXT5QcR7jx4FSrS9q2BkM9brVI0vj+zB6v6RM9kNI=; b=Sv9uI4C0JEiwqEj2oXRpViM/bqMsA6Du6hto1SxwMj/otJC8nPt6k+1nbTH3UWAl3d FkBoPXiQ6JQ5NFZk6Hz/RoJMDkfCg5hzem3dDFfcPtS9TvnKRACUG+JOPMnU+IspCkvi SiRcaiYguFHyaQ19XI1AmsqN9MO9TkGTQLzso= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type; b=Wi4FzjrHDB+FqCI1i9r64CK+bUX/EwD2qjLNyxaPGXH+tQai9pcytkmatWazs8KlaQ 0TYwlHD4BO8Qbkv36fmc1I8i1QwVzm7VkD5piVhQyPfCrKjV9wLmdu1rde0iIYKvO5Dg lBIqtykaqUoQO0y3xtruaRttDV5r7b52Sr4Ps= MIME-Version: 1.0 Received: by 10.213.14.70 with SMTP id f6mr135008eba.7.1288831264261; Wed, 03 Nov 2010 17:41:04 -0700 (PDT) Sender: kungfooguru@gmail.com Received: by 10.213.17.143 with HTTP; Wed, 3 Nov 2010 17:41:04 -0700 (PDT) In-Reply-To: References: Date: Wed, 3 Nov 2010 19:41:04 -0500 X-Google-Sender-Auth: bKuIi6hEfu9pChvvhlDFZEsnZ3E Message-ID: Subject: Re: CouchDB OTP From: Tristan Sloughter To: dev@couchdb.apache.org Content-Type: multipart/alternative; boundary=0015174c3bf8ae871204942f69dc X-Virus-Checked: Checked by ClamAV on apache.org --0015174c3bf8ae871204942f69dc Content-Type: text/plain; charset=ISO-8859-1 P.S. Glad you enjoyed ErlangCamp :). Sucks you didn't make the night events, they were great. Maybe next time! On Wed, Nov 3, 2010 at 7:39 PM, Tristan Sloughter < tristan.sloughter@gmail.com> wrote: > I see it was already discussed about breaking CouchDB into apps: > > couch_core: The core Erlang modules for storing docs and managing "internal infrastructure" > couch_view: The view engine as well as the holder for managing OS processes. > couch_rep: couch_rep*.erl > couch_externals: couch_external*.erl > couch_httpd: couch_http*.erl > > I was going to also start on that after getting the build stable. Now I see > the work of deciding what goes where was already done :). > > This is great. I hope my work on this can be helpful for the move in 1.1.x > you guys want to make. > > Tristan > > On Wed, Nov 3, 2010 at 7:33 PM, Tristan Sloughter < > tristan.sloughter@gmail.com> wrote: > >> Hmm, ok. I have replaced the build system. I am using sinan but it should >> be buildable now with any Erlang/OTP build tool, like rebar. I am just >> running it as a release from a script that erl-execs the boot file. >> >> What complex stuff is the build system dealing with? I'm separating the >> config file (and similar files) problem and the icu and couch_js problem. I >> was hoping building those few C files wouldn't be bad, but I guess that is >> not true from what you are saying? >> >> I'd still say it should be autotools, or whatever, inside an Erlang build >> system. >> >> Tristan >> >> >> On Wed, Nov 3, 2010 at 7:28 PM, Noah Slater wrote: >> >>> Have you wholesale replaced the existing build system? >>> >>> If you have, it's going to be a tad more complex than knocking up a few >>> makefiles to compile C. There's lots of very complex stuff our build system >>> copes with at the moment. I'm not convinced it can be replaced by an Erlang >>> build system and a few shell scripts. We've had chats about improving the >>> build system before, and I think the consensus is that we wrap an Erlang >>> build system WITHIN the Autotools system. >>> >>> What are you thoughts? >>> >>> On 4 Nov 2010, at 00:04, Tristan Sloughter wrote: >>> >>> > If anyone by chance has or can easily create some simplistic make files >>> or >>> > something for compiling the C code that would be AWESOME. I haven't had >>> time >>> > to dig around what is needed to compile the different pieces but its >>> the >>> > last major piece to complete. >>> > >>> > Tristan >>> > >>> > On Wed, Nov 3, 2010 at 10:52 AM, Tristan Sloughter < >>> > tristan.sloughter@gmail.com> wrote: >>> > >>> >> Hi everyone, I have a github fork from apache/couchdb >>> >> https://github.com/tsloughter/couchdb that I modified to be more OTP >>> >> compliant and now builds with sinan (from http://erlware.org). There >>> >> wasn't much that I've done so far. I moved the CouchDB app under >>> >> lib/couchdb. I removed the other apps from the source tree, they can >>> easily >>> >> be installed with faxien (from http://erlware.org) and versions can >>> be >>> >> declared if necessary. I changed the _app.erl file to not start >>> applications >>> >> and added those applications instead to the applications list in the >>> .app >>> >> file. They will be started properly by the release's boot script. >>> >> >>> >> I moved all non-Erlang stuff to lib/couchdb/priv. >>> >> >>> >> I still have a number of things to do that I hope to get to tonight. >>> First, >>> >> fix up the two scripts under bin/. Fix the configuration file >>> locations >>> >> (some stuff is hardcoded for my environment). Add a hook to sinan to >>> compile >>> >> the icu driver -- right now I just copied the library over from a >>> build of >>> >> CouchDB I did separately. >>> >> >>> >> There are probably a few other things.. But I was able to do an >>> >> application:start(couchdb) last night and see it working :). >>> >> >>> >> There were a few things I thought of changing within the code as I dug >>> >> around but those are a separate issue that I'll bring up in discussion >>> after >>> >> all this is complete. >>> >> >>> >> Tristan >>> >> >>> >>> >> > --0015174c3bf8ae871204942f69dc--