[tlbuild] FreeType2 Issue on OpenBSD
Jonathan Kew
jonathan_kew at sil.org
Wed May 14 14:31:52 CEST 2008
Hi Edd,
On 14 May 2008, at 12:46 pm, Edd Barrett wrote:
> Hi Jonathan,
>
> On Tue, May 13, 2008 at 2:42 PM, Jonathan Kew
> <jonathan_kew at sil.org> wrote:
>> You're not doing this via actual Build script from TL, are you?
>> Please try
>> that and see what happens.... and in case of failure, let us see the
>> build.log file that it'll create (in the Work tree, IIRC).
>
> I was completely unaware of this script.
See http://tug.org/texlive/build.html
> The first thing i notice about it is that lots of errors like this
> scroll up:
> ---8<---
> "config.mk", line 29: Need an operator
> "config.mk", line 36: Could not find /builds/freetype.mk
> "config.mk", line 52: Need an operator
> "config.mk", line 54: Need an operator
> "config.mk", line 57: Could not find /builds/unix/install.mk
> "config.mk", line 59: Need an operator
> "./builds/toplevel.mk", line 143: Need an operator
> "./builds/toplevel.mk", line 158: Could not find /builds/modules.mk
> "./builds/toplevel.mk", line 167: Missing dependency operator
> "./builds/toplevel.mk", line 176: Need an operator
> ---8<---
>
> It's assuming make==gmake. On OpenBSD it is not.
>
> --- /tmp/source/Build Wed May 7 22:32:49 2008
> +++ /tl/source/Build Tue May 13 14:47:14 2008
> @@ -28,7 +28,7 @@
> if test "x$1" = x--no-clean; then
> shift
> else
> - test -f Makefile && make clean
> + test -f Makefile && $TL_MAKE clean
> rm -rf $TL_WORKDIR $TL_INSTALL_DEST
> fi
This looks like an oversight; I've just patched it to use $TL_MAKE.
(I think you only ran into this because you had previously run ./
configure directly in the source tree; we normally do out-of-source
builds so this wouldn't arise. But anyhow, it should be fixed now.)
>
> After patching:
>
> ---8<---
> export TL_MAKE=gmake && ./Build --with-fontconfig=/usr/X11R6
> *snip*
> 19m31.56s real 14m4.99s user 2m12.25s system
>
> ./Build: 274 binaries in /tl/source/inst/bin.
> ---8<---
>
> Great! It builds fine, so as far as test builds go its fine on
> OpenBSD.
>
> However you can break the ./Build script by changing --prefix and
> setting --disable-multiplatform.
I think someone was working on --disable-multiplatform, but am not
sure of the current status.
> I am trying to thing how this is going to fit into porting. I would
> prefer to use ./configure && make && make install method, as it would
> integrate far better with our ports system. This method is still
> supported? If so I need to look at what magic ./Build is performing to
> make the build complete.
You should be able to do ./configure [--with-whatever-options-you-
like] && gmake && gmake install; note that you will definitely need
GNU make, not BSD make.
(This is a requirement for both the ICU and Freetype2 build systems,
which are out of our control; see
http://www.icu-project.org/userguide/icufaq.html
"You need GNU's make program version 3.7 or later..."
http://freetype.sourceforge.net/download.html
"GNU Make is required to use the FreeType 2 build system..."
If it's a problem, you'd need to submit patches to those upstream
projects, but I suspect it'd be a waste of time; just go with the
flow and use gmake. You'll need to declare that as a build-time
dependency of the port, presumably.)
JK
More information about the tlbuild
mailing list