Kalle Olavi Niemitalo <[EMAIL PROTECTED]> wrote Tue, Dec 06, 2005:
> Jonas Fonseca <[EMAIL PROTECTED]> writes:
> 
> > Kalle Olavi Niemitalo <[EMAIL PROTECTED]> wrote Sun, Dec 04, 2005:
> >> Kalle Olavi Niemitalo <[EMAIL PROTECTED]> writes:
> >> > * The install-data-local-yes target installs those files from the
> >> >   source directory and ignores files in the build directory.
> >
> > This should not be the case anymore.
> 
> <fonseca> kahmalo: The tar.gz is made by using cg-export.
> 
> The "master" branch of your GIT tree doesn't appear to include
> the po/*.gmo files.  In fact, they are listed in po/.gitignore.
> Yet, http://elinks.cz/download/elinks-current-unstable.tar.gz
> includes them.  How does cg-export know it should put po/*.gmo
> in the tar file?

Yeah, ok, sorry, I didn't tell you everything there. The cool thing is
that cg-export puts everything being tracked by git in the exported
directory. However, after running cg-export we run ./autogen.sh,
./configure and for the HEAD branch 'make -C po' so that people without
the autotools and gettext tools installed can use the tarballs. Parts
from the script that generates the tarballs:

        GIT_DIR="..." cg-export -r "$branch" /tmp/path/elinks
        cd /tmp/path/elinks
        ./autogen.sh
        ./configure

        if [ "$branch" = "REL_0_10" ]; then
                make dist
                tar xfz elinks-$version*.tar.gz
                cd elinks-$version*
        else
                make -C po
        fi

        mkdir doc/html
        cp -r /elinks.or.cz/folder/documentation/html/*.html* doc/html

> > Also, it would do the wrong
> > thing if I have multiple build trees based on one source tree (for
> > example several trees related to different bugs or features where you
> > use cg-switch in the source tree to check out my work).
> 
> I installed cogito 0.16rc2 but don't see a cg-switch.  It doesn't
> have a manpage at http://kernel.org/pub/software/scm/cogito/docs/
> either.  So I don't know what it does.

It was merged after 0.16rc2 was released, there exists a released 0.16,
and pasky is lazy so don't expect the manpages to always be up-to-date.
;)

Snippet from cg-switch(1):

        cg-switch(1) can switch your current local branch (and working
        copy) to an existing branch, or create a new branch based on a
        given commit.

        Terminology note: This command concerns local branches (also
        called "heads"), not remote branches (those managed by
        cg-branch-add(1)).
       
> By analogy with svn switch, I assume it changes the files of your
> source tree to track another branch kept in the .git directory.
> I don't think that is the traditional reason to have multiple
> build trees (rather, they are for building the same source for
> different platforms or with different options), but if you're
> saying that's the most convenient way to compile different
> branches from GIT, I don't have enough experience to dispute
> that.  Doesn't it mess up your timestamps and thereby cause
> unnecessary recompilation after every switch, though?

I don't use it a lot, in fact I hardly ever use out-of-tree building.
But it just seems wrong to place build-oriented files in the source
directory.

> Anyway, po/*.gmo wouldn't be the only generated files in the
> source tree.  Specifically, autogen.sh places several files
> there: acinclude.m4, aclocal.m4, config.h.in, and configure.
> If storing po/*.gmo in the source tree would cause you trouble,
> how do you cope with these?

They are kind of different, IMO, since those generated files can be
shared across several builds, no?

> >> I have also taken the liberty to remove the SUFFIXES variable and
> >> the .SUFFIXES rule.
> 
> > Any chance you could post these changes in a separate patch?
> 
> OK; I'll post one patch to remove the SUFFIXES, another to fix
> po/Makefile for builddir!=srcdir while keeping po/*.gmo in builddir,
> a third one for other po/Makefile changes, and then we can keep
> discussing (arguing?) where po/*.gmo should be.

Thanks. :)

-- 
Jonas Fonseca
_______________________________________________
elinks-dev mailing list
[email protected]
http://linuxfromscratch.org/mailman/listinfo/elinks-dev

Reply via email to