Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-09 Thread Nagy Károly


> Attached is a new version, implementing your findings.

Before building...
At first look at this new version of Makefile, I saw the following line
very suspiciously:

gxvalid.ppc.o: gxvalid.c
$(CC) -c $(CFLAGS) -Wno-aggregate-return $< -o $@

After building...
My sinister thought came true, but after extending VPATH with
"../../src/gxvalid \", the building process almost ran perfectly, there are
only some warnings as you can see in the attached "build_log.txt" (and I
attached the modified Makefile, too)

How should we eliminate those warnings from
gxvalid/gxvalid.c/gxvjust.c/gxvmort.c and otvalid/otvmod.c? Can you report
it to the Developers of FreeType?

Have a good night-time.

On 2018.11.09., you wrote:

>> After replacing "FT:" with "../../" in VPATH variable, the Makefile
>> began to work...

> Well...  It seems that the Amiga port of GNU make can handle device
> names (containing `:') only in targets but not in VPATH.  Too bad.

> Attached is a new version, implementing your findings.


> Werner


___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-09 Thread Werner LEMBERG

> Attached is a new version, implementing your findings.

Oops, here's the right one, fixing a typo.


Werner
#
# Intro text.
#

#
# Copyright notice.
#


#
# Build instructions.
#


.PHONY: all

all: libfreetype.a

CC = gcc
AR = ar
RANLIB = ranlib

DIRFLAGS = \
  -Iinclude \
  -I../../src \
  -I../../include \
  -ISDK:include

WARNINGS = \
  -W \
  -Waggregate-return \
  -Wall \
  -Wbad-function-cast \
  -Wpointer-arith \
  -Wshadow \
  -Wundef \
  -Wwrite-strings

OPTIONS = \
  -DFT2_BUILD_LIBRARY \
  -DNDEBUG \
  -fno-builtin

OPTIMIZE = \
  -O2 \
  -finline-functions \
  -fomit-frame-pointer \
  -fstrength-reduce

CFLAGS = \
  -mcrt=clib2 \
  $(DIRFLAGS) \
  $(WARNINGS) \
  $(FT2FLAGS) \
  $(OPTIONS) \
  $(OPTIMIZE)


# We assume there aren't files with identical names to compile in VPATH.
VPATH = \
  ../../src/autofit \
  ../../src/base \
  ../../src/bdf \
  ../../src/bzip2 \
  ../../src/cff \
  ../../src/cache \
  ../../src/gxvalid \
  ../../src/gzip \
  ../../src/lzw \
  ../../src/otvalid \
  ../../src/pcf \
  ../../src/pfr \
  ../../src/psaux \
  ../../src/pshinter \
  ../../src/psnames \
  ../../src/raster \
  ../../src/sfnt \
  ../../src/smooth \
  ../../src/truetype \
  ../../src/type1 \
  ../../src/cid \
  ../../src/type42 \
  ../../src/winfonts


%.ppc.o: %.c
$(CC) -c $(CFLAGS) $< -o $@


ftdebugpure.ppc.o: src/base/ftdebug.c
$(CC) -c $(CFLAGS) $< -o $@
ftsystempure.ppc.o: src/base/ftsystem.c
$(CC) -c $(CFLAGS) $< -o $@
gxvalid.ppc.o: gxvalid.c
$(CC) -c $(CFLAGS) -Wno-aggregate-return $< -o $@


BASE = \
  ftbase.ppc.o \
  ftbbox.ppc.o \
  ftbdf.ppc.o \
  ftbitmap.ppc.o \
  ftcid.ppc.o \
  ftfstype.ppc.o \
  ftgasp.ppc.o \
  ftglyph.ppc.o \
  ftgxval.ppc.o \
  ftinit.ppc.o \
  ftmm.ppc.o \
  ftotval.ppc.o \
  ftpatent.ppc.o \
  ftpfr.ppc.o \
  ftstroke.ppc.o \
  ftsynth.ppc.o \
  ftsystem.ppc.o \
  fttype1.ppc.o \
  ftwinfnt.ppc.o

DEBUG = \
  ftdebug.ppc.o \
  ftdebugpure.ppc.o

AFIT = autofit.ppc.o

GXV = gxvalid.ppc.o

OTV = otvalid.ppc.o

PS = \
  psaux.ppc.o \
  pshinter.ppc.o \
  psnames.ppc.o

RASTER = \
  raster.ppc.o \
  smooth.ppc.o

FONTD = \
  bdf.ppc.o \
  cff.ppc.o \
  pcf.ppc.o \
  pfr.ppc.o \
  truetype.ppc.o \
  type1.ppc.o \
  type1cid.ppc.o \
  type42.ppc.o \
  winfnt.ppc.o

OTHER = \
  ftcache.ppc.o \
  ftgzip.ppc.o \
  ftlzw.ppc.o \
  sfnt.ppc.o

# Add $(DEBUG) to the list of requisites if you want debugging output.
libfreetype.a: \
  $(BASE) \
  $(AFIT) \
  $(GXV) \
  $(OTV) \
  $(PS) \
  $(RASTER) \
  $(FONTD) \
  $(OTHER)
$(AR) r $@ $^
$(RANLIB) $@

# Local Variables:
# coding: utf-8
# End:


___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-09 Thread Werner LEMBERG

> After replacing "FT:" with "../../" in VPATH variable, the Makefile
> began to work...

Well...  It seems that the Amiga port of GNU make can handle device
names (containing `:') only in targets but not in VPATH.  Too bad.

Attached is a new version, implementing your findings.


Werner
#
# Intro text.
#

#
# Copyright notice.
#


#
# Build instructions.
#


.PHONY: all

all: libfreetype.a

CC = gcc
AR = ar
RANLIB = ranlib

DIRFLAGS = \
  -Iinclude \
  -I../../src \
  -I../../include \
  -ISDK:include

WARNINGS = \
  -W \
  -Waggregate-return \
  -Wall \
  -Wbad-function-cast \
  -Wpointer-arith \
  -Wshadow \
  -Wundef \
  -Wwrite-strings

OPTIONS = \
  -DFT2_BUILD_LIBRARY \
  -DNDEBUG \
  -fno-builtin

OPTIMIZE = \
  -O2 \
  -finline-functions \
  -fomit-frame-pointer \
  -fstrength-reduce

CFLAGS = \
  -mcrt=clib2 \
  $(DIRFLAGS) \
  $(WARNINGS) \
  $(FT2FLAGS) \
  $(OPTIONS) \
  $(OPTIMIZE)


# We assume there aren't files with identical names to compile in VPATH.
VPATH = \
  ../../src/autofit \
  ../../src/base \
  ../../src/bdf \
  ../../src/bzip2 \
  ../../src/cff \
  ../../src/cache \
  ../../src/gzip \
  ../../src/lzw \
  ../../src/otvalid \
  ../../src/pcf \
  ../../src/pfr \
  ../../src/psaux \
  ../../src/pshinter \
  ../../src/psnames \
  ../../src/raster \
  ../../src/sfnt \
  ../../src/smooth \
  ../../src/truetype \
  ../../src/type1 \
  ../../src/cid \
  ../../src/type42 \
  ../../src/winfonts


%.ppc.o: %.c
$(CC) -c $(CFLAGS) $< -o $@


ftdebugpure.ppc.o: src/base/ftdebug.c
$(CC) -c $(CFLAGS) $< -o $@
ftsystempure.ppc.o: src/base/ftsystem.c
$(CC) -c $(CFLAGS) $< -o $@
gxvalid.ppc.o: gxvalid.c
$(CC) -c $(CFLAGS) -Wno-aggregate-return $< -o $@


BASE = \
  ftbase.ppc.o \
  ftbbox.ppc.o \
  ftbdf.ppc.o \
  ftbitmap.ppc.o \
  ftcid.ppc.o \
  ftfstype.ppc.o \
  ftgasp.ppc.o \
  ftglyph.ppc.o \
  ftgxval.ppc.o \
  ftinit.ppc.o \
  ftmm.ppc.o \
  ftotval.ppc.o \
  ftpatent.ppc.o \
  ftpfr.ppc.o \
  ftstroke.ppc.o \
  ftsynth.ppc.o \
  ftsystem.ppc.o \
  fttype1.ppc.o \
  ftwinfnt.ppc.o

DEBUG = \
  ftdebug.ppc.o \
  ftdebugpure.ppc.o

AFIT = autofit.ppc.o

GXV = gxvalid.ppc.o

OTV = otvalid.ppc.o

PS = \
  psaux.ppc.o \
  pshinter.ppc.o \
  psnames.ppc.o

RASTER = \
  raster.ppc.o \
  smooth.ppc.o

FONTD = \
  bdf.ppc.o \
  cff.ppc.o \
  pcf.ppc.o \
  pfr.ppc.o \
  truetype.ppc.o \
  type1.ppc.o \
  type1cid.ppc.o \
  type42.ppc.o \
  winfnt.ppc.o

OTHER = \
  ftcache.ppc.o \
  ftgzip.ppc.o \
  ftlzw.ppc.o \
  sfnt.ppc.o

# Add $(DEBUG) to the list of requisites if you want debugging output.
libfreetype.a: \
  $(BASE) \
  $(AFIT) \
  $(GXV) \
  $(OTV) \
  $(PS) \
  $(RASTER) \
  $(FONTD) \
  $(OTHER)
$(AR) r $@ $^
$(RANLIB) $@

# Local Variables:
# coding: utf-8
# End:


___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-08 Thread Nagy Károly

> Please send me the output of make -d -r -R -n > make.log

make.log is attached


On 2018.11.08., you wrote:

>> I tested your new professional Makefile in WinUAE (Amiga OS 4.1
>> Classic) on a PC in the afternoon and now on my AmigaOne and got the
>> same following output:
>> 
>> freetype/builds/amiga> make
>> 
>> assign FT: //
>> make: *** No rule to make target `ftbase.ppc.o', needed by
>> `libfreetype.a'.  Stop.
>> 
>> freetype/builds/amiga>

> Please send me the output of

>   make -d -r -R -n > make.log


> Werner
> 


make.log
Description: make.log
___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-08 Thread Werner LEMBERG


> I tested your new professional Makefile in WinUAE (Amiga OS 4.1
> Classic) on a PC in the afternoon and now on my AmigaOne and got the
> same following output:
> 
> freetype/builds/amiga> make
> 
> assign FT: //
> make: *** No rule to make target `ftbase.ppc.o', needed by `libfreetype.a'.
>  Stop.
> 
> freetype/builds/amiga>

Please send me the output of

  make -d -r -R -n > make.log


Werner

___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-08 Thread Nagy Károly
Hello Werner,

I tested your new professional Makefile in WinUAE (Amiga OS 4.1 Classic) on
a PC in the afternoon and now on my AmigaOne and got the same following
output:

freetype/builds/amiga> make

assign FT: //
make: *** No rule to make target `ftbase.ppc.o', needed by `libfreetype.a'.
 Stop.

freetype/builds/amiga>

Have a nice evening.

Károly

On 2018.11.07., you wrote:

>> I write a "new" Makefile (freed from a lot of "brick-a-brack" and
>> tested) for building FreeType Library easily on an AmigaOne (AmigaOS
>> 4.1 Final Edition Update 1): attached "Makefile".

> Thanks!

>> It makes a "libfreetype.a" (linked with ftinit.ppc.o and
>> ftsystem.ppc.o, too) static library which need to be copied to
>> "SDK:local/newlib/lib". (SDK v53.30, GCC v4.2.4)

> Note, however, that your Makefile isn't typical.  What you provide is
> an `all or nothing' approach: If, say, a developer changes a single
> source file, *all* source files are re-compiled.

> Attached you can find my try to improve this (due to the `FT:' in the
> source file path names I can't directly test this under GNU/Linux).

>> After all these, we can create an application with the following
>> method without any complication:
>> 
>> gcc sdlttf.c -o sdlttf.run -lSDL_ttf -lfreetype -lSDL

> I ask you to help me further with integration into FreeType.

> * There already exists `builds/amiga/makefile'.  I assume that file
>   should be renamed.  What shall I do?

> * Please provide a patch for `builds/amiga/README' that explains what
>   your Makefile does.

> * It is also necessary to enrich `Makefile' with proper comments, as
>   indicated in my version.


> Werner


___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-07 Thread Werner LEMBERG

> I write a "new" Makefile (freed from a lot of "brick-a-brack" and
> tested) for building FreeType Library easily on an AmigaOne (AmigaOS
> 4.1 Final Edition Update 1): attached "Makefile".

Thanks!

> It makes a "libfreetype.a" (linked with ftinit.ppc.o and
> ftsystem.ppc.o, too) static library which need to be copied to
> "SDK:local/newlib/lib". (SDK v53.30, GCC v4.2.4)

Note, however, that your Makefile isn't typical.  What you provide is
an `all or nothing' approach: If, say, a developer changes a single
source file, *all* source files are re-compiled.

Attached you can find my try to improve this (due to the `FT:' in the
source file path names I can't directly test this under GNU/Linux).

> After all these, we can create an application with the following
> method without any complication:
> 
> gcc sdlttf.c -o sdlttf.run -lSDL_ttf -lfreetype -lSDL

I ask you to help me further with integration into FreeType.

* There already exists `builds/amiga/makefile'.  I assume that file
  should be renamed.  What shall I do?

* Please provide a patch for `builds/amiga/README' that explains what
  your Makefile does.

* It is also necessary to enrich `Makefile' with proper comments, as
  indicated in my version.


Werner
#
# Intro text.
#

#
# Copyright notice.
#


#
# Build instructions.
#


.PHONY: all assign

all: assign \
 libfreetype.a

assign:
assign FT: //


CC = gcc
AR = ar
RANLIB = ranlib

DIRFLAGS = \
  -Iinclude \
  -IFT:src \
  -IFT:include \
  -ISDK:include

WARNINGS = \
  -W \
  -Waggregate-return \
  -Wall \
  -Wbad-function-cast \
  -Wpointer-arith \
  -Wshadow \
  -Wundef \
  -Wwrite-strings

OPTIONS = \
  -DFT2_BUILD_LIBRARY \
  -DNDEBUG \
  -fno-builtin

OPTIMIZE = \
  -O2 \
  -finline-functions \
  -fomit-frame-pointer \
  -fstrength-reduce

CFLAGS = \
  -mcrt=clib2 \
  $(DIRFLAGS) \
  $(WARNINGS) \
  $(FT2FLAGS) \
  $(OPTIONS) \
  $(OPTIMIZE)


# We assume there aren't files with identical names to compile in VPATH.
VPATH = \
  FT:src/autofit \
  FT:src/base \
  FT:src/bdf \
  FT:src/bzip2 \
  FT:src/cff \
  FT:src/cache \
  FT:src/gzip \
  FT:src/lzw \
  FT:src/otvalid \
  FT:src/pcf \
  FT:src/pfr \
  FT:src/psaux \
  FT:src/pshinter \
  FT:src/psnames \
  FT:src/raster \
  FT:src/sfnt \
  FT:src/smooth \
  FT:src/truetype \
  FT:src/type1 \
  FT:src/cid \
  FT:src/type42 \
  FT:src/winfonts


%.ppc.o: %.c
$(CC) -c $(CFLAGS) $< -o $@


ftdebugpure.ppc.o: src/base/ftdebug.c
$(CC) -c $(CFLAGS) $< -o $@
ftsystempure.ppc.o: src/base/ftsystem.c
$(CC) -c $(CFLAGS) $< -o $@
gxvalid.ppc.o: gxvalid.c
$(CC) -c $(CFLAGS) -Wno-aggregate-return $< -o $@


BASE = \
  ftbase.ppc.o \
  ftbbox.ppc.o \
  ftbdf.ppc.o \
  ftbitmap.ppc.o \
  ftcid.ppc.o \
  ftfstype.ppc.o \
  ftgasp.ppc.o \
  ftglyph.ppc.o \
  ftgxval.ppc.o \
  ftinit.ppc.o \
  ftmm.ppc.o \
  ftotval.ppc.o \
  ftpatent.ppc.o \
  ftpfr.ppc.o \
  ftstroke.ppc.o \
  ftsynth.ppc.o \
  ftsystem.ppc.o \
  fttype1.ppc.o \
  ftwinfnt.ppc.o

DEBUG = \
  ftdebug.ppc.o \
  ftdebugpure.ppc.o

AFIT = autofit.ppc.o

GXV = gxvalid.ppc.o

OTV = otvalid.ppc.o

PS = \
  psaux.ppc.o \
  pshinter.ppc.o \
  psnames.ppc.o

RASTER = \
  raster.ppc.o \
  smooth.ppc.o

FONTD = \
  bdf.ppc.o \
  cff.ppc.o \
  pcf.ppc.o \
  pfr.ppc.o \
  truetype.ppc.o \
  type1.ppc.o \
  type1cid.ppc.o \
  type42.ppc.o \
  winfnt.ppc.o

OTHER = \
  ftcache.ppc.o \
  ftgzip.ppc.o \
  ftlzw.ppc.o \
  sfnt.ppc.o

# Add $(DEBUG) to the list of requisites if you want debugging output.
libfreetype.a: \
  $(BASE) \
  $(AFIT) \
  $(GXV) \
  $(OTV) \
  $(PS) \
  $(RASTER) \
  $(FONTD) \
  $(OTHER)
$(AR) r $@ $^
$(RANLIB) $@

# Local Variables:
# coding: utf-8
# End:


___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype


[ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne

2018-11-06 Thread Nagy Károly
Hello Werner,

I write a "new" Makefile (freed from a lot of "brick-a-brack" and tested)
for building FreeType Library easily on an AmigaOne (AmigaOS 4.1 Final
Edition Update 1): attached "Makefile".

It makes a "libfreetype.a" (linked with ftinit.ppc.o and ftsystem.ppc.o,
too) static library which need to be copied to "SDK:local/newlib/lib". (SDK
v53.30, GCC v4.2.4)

After all these, we can create an application with the following method
without any complication:

gcc sdlttf.c -o sdlttf.run -lSDL_ttf -lfreetype -lSDL

Regards,
Károly Nagy

PS.: It would be good that you will place this Makefile (maybe mentioned my
name in it) in the next version of FreeType. I think it helps other Amiga
Fans and the name "libfreetype.a" sounds more logical than "libft2_ppc.a"
and I am not the only one who think so...


Makefile
Description: Makefile
___
Freetype mailing list
Freetype@nongnu.org
https://lists.nongnu.org/mailman/listinfo/freetype