Re: [ft] This is the "perfect" Makefile for FreeType library building on an AmigaOne
> 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
> 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
> 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
> 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
> 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
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
> 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
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