On Sun, Aug 11, 2024 at 01:35:34PM +0200, Florian Ernst wrote:
> 
> With the attached minimized patch this tuxpaint version compiles again
> with gcc-14. It seems this was first fixed upstream in 0.9.29, cf.
> <https://sourceforge.net/p/tuxpaint/tuxpaint/ci/9d70b5837cc307e6c9fe80e6e7dcabf7750b1d45/>.
> 
> -static int SDLCALL NondefectiveBlit(SDL_Surface * src, SDL_Rect * srcrect, 
> SDL_Surface * dst, SDL_Rect * dstrect)
> +static int SDLCALL NondefectiveBlit(SDL_Surface * src, const SDL_Rect * 
> srcrect, SDL_Surface * dst, SDL_Rect * dstrect)

>  static void autoscale_copy_smear_free(SDL_Surface * src, SDL_Surface * dst,
>                                        int SDLCALL(*blit) (SDL_Surface * src,
> -                                                          SDL_Rect * 
> srcrect, SDL_Surface * dst, SDL_Rect * dstrect))
> +                                                          const SDL_Rect * 
> srcrect, SDL_Surface * dst, SDL_Rect * dstrect))


I tried applying this, but then later linking fails (at least on arm64):

...Linking Tux Paint...
cc -Wdate-time -D_FORTIFY_SOURCE=2 -O0 -g -W -Wall -fno-common -ffloat-store 
-fvisibility=hidden -Wcast-align -Wredundant-decls -Wbad-function-cast 
-Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes 
-Wstrict-aliasing=2   -g -
I/usr/include/SDL2 -D_REENTRANT  -I/usr/include/fribidi  
-DVER_DATE=\"2024-10-06\" -DVER_VERSION=\"0.9.28\" 
-DDATA_PREFIX=\"/usr/share/tuxpaint/\" 
-DDOC_PREFIX=\"/usr/share/doc/tuxpaint-0.9.28/\" 
-DLOCALEDIR=\"/usr/share/locale/\" -DIMDIR=\"/usr/shar
e/tuxpaint/im/\" -DCONFDIR=\"/etc/tuxpaint/\" 
-DMAGIC_PREFIX=\"/usr/lib/tuxpaint/plugins/\"    -DNO_SDLPANGO   \
        -o tuxpaint obj/tuxpaint.o obj/i18n.o obj/im.o obj/cursor.o 
obj/pixels.o obj/rgblinear.o obj/playsound.o obj/fonts.o obj/parse.o obj/fill.o 
obj/progressbar.o obj/dirwalk.o obj/get_fname.o obj/onscreen_keyboard.o 
obj/gifenc.o obj/sounds.o obj/
postscript_print.o \
        -lSDL2  -lSDL2_image -lSDL2  -lSDL2_ttf -lSDL2  -lSDL2_gfx -lSDL2  -lz  
-lpng16  -lSDL2_mixer -lSDL2   
-L/usr/lib/aarch64-linux-gnu/pkgconfig/../../../lib/aarch64-linux-gnu -lrsvg-2 
-lcairo-gobject -lpng16 -ldav1d -lgdk_pixbuf-2.0 -lgio-2.0 -
lxml2 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lharfbuzz 
-lfontconfig -lfreetype -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 
-lglib-2.0 -lcairo  -lpaper -lfribidi  -limagequant
/usr/bin/ld: obj/tuxpaint.o: undefined reference to symbol 'atan2@@GLIBC_2.17'
/usr/bin/ld: /lib/aarch64-linux-gnu/libm.so.6: error adding symbols: DSO 
missing from command line
collect2: error: ld returned 1 exit status

:-(

Reply via email to