Opened 17 years ago
Last modified 15 years ago
#743 reopened Defect
Unix "make install" doesn't install gettext files correctly
| Reported by: | Nicolas | Owned by: | Eric Korpela |
|---|---|---|---|
| Priority: | Undetermined | Milestone: | Undetermined |
| Component: | Client - Build | Version: | |
| Keywords: | Cc: |
Description
The custom install rules in locale/client/Makefile.am are incorrect.
- It's trying to copy the
.pofiles. Those are source code; it should install the.mofiles. - It doesn't work with out-of-source builds. The makefile copies the files from the current directory, which isn't necessarily the source directory, where the files actually are. The only file in
build_dir/locale/clientis the Makefile.
To reproduce 2., do
mkdir build; cd build; ../configure --prefix=~/local/boinc-test; #or wherever... cd locale/client; make install; # this looks in build/locale/client/<lang> instead of locale/client/<lang>
Change History (6)
comment:1 Changed 17 years ago by
| Owner: | changed from romw to Eric Korpela |
|---|
comment:2 Changed 17 years ago by
Additionally, the makefile should build the .mo files from the .po files at build time.
comment:3 Changed 17 years ago by
| Component: | Client - Setup → Client - Build |
|---|
comment:5 Changed 16 years ago by
| Resolution: | fixed |
|---|---|
| Status: | closed → reopened |
I don't think so. See item 2 in bug description; I even posted instructions to reproduce.
~/src/boinc$ mkdir build; cd build
~/src/boinc/build$ ../configure --prefix=$HOME/local/boinc-test
...
~/src/boinc/build$ cd locale
~/src/boinc/build/locale$ ls
Makefile
~/src/boinc/build/locale$ make install
make[1]: Entering directory `/home/nicolas/src/boinc/build/locale'
make install-exec-hook
make[2]: Entering directory `/home/nicolas/src/boinc/build/locale'
mydir=/home/nicolas/local/boinc-test/share/locale ;\
for ldir in ar be bg ca cs da de el es fa fr gl hr hu it ja ko lt lv nl pl pt pt_BR ro ru sk sv_SE tr uk zh_CN zh_TW ; do \
/usr/bin/install -c -d $mydir/$ldir ; \
if [ -f $ldir/BOINC-Manager.mo ] ; then \
/usr/bin/install -c $ldir/BOINC-Manager.mo $mydir/$ldir/BOINC-Manager.mo ; \
fi ;\
done
make[2]: Leaving directory `/home/nicolas/src/boinc/build/locale'
make[1]: Nothing to be done for `install-data-am'.
make[1]: Leaving directory `/home/nicolas/src/boinc/build/locale'
It didn't install any file at all. The PREFIX/share/locale directory only has empty subdirectories:
$ ls /home/nicolas/local/boinc-test/share/locale ar bg cs de es fr hr it ko lv pl pt_BR ru sv_SE uk zh_TW be ca da el fa gl hu ja lt nl pt ro sk tr zh_CN $ ls /home/nicolas/local/boinc-test/share/locale/es $ ls /home/nicolas/local/boinc-test/share/locale/de $
comment:6 Changed 15 years ago by
I'm not sure if out-of-source builds should work for this. Translations are updated with the upgrade script.

Hmm, I guess the default owner setting for "Client - Setup" tickets assumes "Setup" is the Windows installer :) Reassigning.