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