diff --git a/multimedia/xanim/Makefile b/multimedia/xanim/Makefile index b9904a91bc96..b0bca62b9533 100644 --- a/multimedia/xanim/Makefile +++ b/multimedia/xanim/Makefile @@ -1,61 +1,60 @@ PORTNAME= xanim PORTVERSION= 2.92.0 -PORTREVISION= 11 +PORTREVISION= 12 CATEGORIES= multimedia graphics -MASTER_SITES= ftp://ftp.nstu.ru/pub/mirrors/xanim.va.pubnix.com/:main \ - LOCAL/dinoex:main,DEFAULT \ - ftp://ftp.nstu.ru/pub/mirrors/xanim.va.pubnix.com/dlls/ +MASTER_SITES= LOCAL/dinoex DISTNAME= xanim2920 -DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:main ${EXTRA_FILES} +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${EXTRA_FILES} MAINTAINER= dinoex@FreeBSD.org COMMENT= Play most popular animation formats and show pictures -WWW= http://xanim.polter.net/ +WWW= https://web.archive.org/web/20230627070655/http://xanim.polter.net/ # Converted from NO_CDROM LICENSE= xanim LICENSE_NAME= xanim LICENSE_TEXT= Must be redistributed without fee LICENSE_PERMS= dist-mirror pkg-mirror auto-accept # clang's cpp destroys whitespace, particularly hard tabs in makefiles, # which is fatal for imake. USES= alias imake xorg USE_GCC= yes +USE_CSTD= gnu99 USE_XORG= xext xt sm ice xext x11 MAKE_ARGS+= -j 2 # safe and helps even the single-CPU machines DLLDIR= ${PREFIX}/lib/X11/xanim PLIST_FILES+= bin/xanim share/man/man1/xanim.1.gz post-extract: ${CP} ${WRKSRC}/docs/xanim.man ${WRKSRC} .include .if (${ARCH} == "i386") EXTRA_FILES= vid_cvid_2.1_freebsdELFx86.tgz \ vid_cyuv_1.0_freebsdELFx86.tgz \ vid_h261_1.0_freebsdELFx86.tgz \ vid_h263_1.0_freebsdELFx86.tgz \ vid_iv32_2.1_freebsdELFx86.tgz \ vid_iv41_1.1_freebsdELFx86.tgz \ vid_iv50_1.0_freebsdELFx86.tgz PLIST_FILES+= lib/X11/xanim/cvid.readme lib/X11/xanim/cyuv.readme \ lib/X11/xanim/h261.readme lib/X11/xanim/h263.readme \ lib/X11/xanim/iv32.readme lib/X11/xanim/iv41.readme \ lib/X11/xanim/iv50.readme \ lib/X11/xanim/vid_cvid_2.1_freebsdELFx86.xa \ lib/X11/xanim/vid_cyuv_1.0_freebsdELFx86.xa \ lib/X11/xanim/vid_h261_1.0_freebsdELFx86.xa \ lib/X11/xanim/vid_h263_1.0_freebsdELFx86.xa \ lib/X11/xanim/vid_iv32_2.1_freebsdELFx86.xa \ lib/X11/xanim/vid_iv41_1.1_freebsdELFx86.xa \ lib/X11/xanim/vid_iv50_1.0_freebsdELFx86.xa post-install: ${MKDIR} ${STAGEDIR}${DLLDIR} ${INSTALL_DATA} ${WRKDIR}/*.readme ${STAGEDIR}${DLLDIR}/ ${INSTALL_DATA} ${WRKDIR}/*.xa ${STAGEDIR}${DLLDIR}/ .endif .include diff --git a/multimedia/xanim/files/patch-Imakefile b/multimedia/xanim/files/patch-Imakefile index 20268744731c..7077c074b9ed 100644 --- a/multimedia/xanim/files/patch-Imakefile +++ b/multimedia/xanim/files/patch-Imakefile @@ -1,80 +1,80 @@ ---- Imakefile.orig Sun Apr 21 01:25:06 2002 -+++ Imakefile Thu Jan 2 07:53:41 2003 -@@ -96,7 +96,7 @@ +--- Imakefile.orig 2002-04-20 23:25:06 UTC ++++ Imakefile +@@ -96,7 +96,7 @@ XCOMM ## Linux XCOMM to link against symbols inside xanim. XCOMM XCOMM ## Linux -XCOMM LD_FLAGS = -rdynamic +LD_FLAGS = -rdynamic XCOMM XCOMM ## SunOS/Solaris use: XCOMM LD_FLAGS = -@@ -112,7 +112,7 @@ +@@ -112,7 +112,7 @@ XCOMM XCOMM NOTE: not all machines need the XA_DLL_LIB define. XCOMM ######################################################################### XCOMM -XCOMM XA_DLL_DEF = -DXA_DLL -DXA_PRINT +XA_DLL_DEF = -DXA_DLL -DXA_PRINT XCOMM ### Use this only if the above doesn't work XCOMM XA_DLL_DEF = -DXA_DLL XCOMM -@@ -120,14 +120,14 @@ +@@ -120,14 +120,14 @@ XCOMM HP/UX should use the following: XCOMM XA_DLL_LIB = -ldl XCOMM XCOMM HP/UX should use the following: -XA_DLL_DEF = -DXA_HPDLL -XA_DLL_LIB = -Wl,-E -ldld +XCOMM XA_DLL_DEF = -DXA_HPDLL +XCOMM XA_DLL_LIB = -Wl,-E -ldld XCOMM XCOMM XCOMM If you'd like to change the default directory that XAnim searches while XCOMM looking for dlls, then change the directory below. XCOMM -XA_DLL_PATH = /usr/local/xanim/mods +XA_DLL_PATH = $(LIBDIR)/xanim XCOMM ######################################################################### -@@ -319,8 +319,8 @@ +@@ -319,8 +319,8 @@ XCOMM -- Also FreeBSD, and BSDI with SBlast-BSD-1.5 ( XCOMM XA_AUDIO_LIBS = -lc XCOMM XCOMM -- Also FreeBSD, and BSDI with SBlast-BSD-1.5 (development stages)------ -XCOMM XA_AUDIO_DEFS = -DXA_LINUX_AUDIO -XCOMM XA_AUDIO_LIBS = -lc +XA_AUDIO_DEFS = -DXA_LINUX_AUDIO +XA_AUDIO_LIBS = -lc XCOMM XCOMM -- TOWNS Linux 16 bit PCM ---------------------------------------------- XCOMM XA_AUDIO_DEFS = -DXA_TOWNS_AUDIO -@@ -351,9 +351,9 @@ +@@ -351,9 +351,9 @@ XCOMM -- HP/UX 10.x AServer XCOMM XA_AUDIO_LIBS = -lAlib XCOMM -- XCOMM -- HP/UX 10.x AServer -XA_AUDIO_DEFS = -DXA_HP_AUDIO -DXA_HP10 -XA_AUDIO_LIBS = -L/opt/audio/lib -lAlib -XA_AUDIO_INCS = -I/opt/audio/include +XCOMM XA_AUDIO_DEFS = -DXA_HP_AUDIO -DXA_HP10 +XCOMM XA_AUDIO_LIBS = -L/opt/audio/lib -lAlib +XCOMM XA_AUDIO_INCS = -I/opt/audio/include XCOMM XCOMM ------ AF (AudioFile) Support ------------------------------------------ XCOMM -- You need to indicate where the AF libraries libAFUtil.a and libAF.a -@@ -447,7 +447,7 @@ +@@ -447,7 +447,7 @@ XCOMM -- NOTE_8: HP-UX machines need to comment thi XCOMM -- following symbols(XmbufDisplayBuffers, XmbufQueryExtension, XCOMM -- XmbufCreateBuffers). XCOMM -- NOTE_8: HP-UX machines need to comment this out. -XCOMM XA_MULTIBUF = -DXMBUF +XA_MULTIBUF = -DXMBUF XCOMM XCOMM ########### XCOMM -@@ -470,7 +470,7 @@ +@@ -470,7 +470,7 @@ PROGRAMS = $(XANIM) PROGRAMS = $(XANIM) -INCLUDES = -I$(INCDIR) $(XA_INCS) +INCLUDES = -I$(INCDIR)/X11 $(XA_INCS) LIBS1 = $(XA_LIBS) $(EXTENSIONLIB) $(XTOOLLIB) $(XLIB) -lm DEPLIBS1 = $(DEPEXTENSIONLIB) $(DEPXTOOLLIB) $(DEPXLIB) diff --git a/multimedia/xanim/files/patch-xa_audio.h b/multimedia/xanim/files/patch-xa_audio.h index c31651a74fbe..6538448debd6 100644 --- a/multimedia/xanim/files/patch-xa_audio.h +++ b/multimedia/xanim/files/patch-xa_audio.h @@ -1,14 +1,14 @@ ---- xa_audio.h.old Thu Apr 11 08:48:39 2002 -+++ xa_audio.h Thu Apr 11 08:49:25 2002 -@@ -139,7 +139,11 @@ +--- xa_audio.h.orig 1999-03-21 22:36:25 UTC ++++ xa_audio.h +@@ -139,7 +139,11 @@ extern xaULONG xa_forkit; #define _FILE_DSP "/dev/dsp" #define _FILE_MIXER "/dev/mixer" #ifdef __FreeBSD__ +#if __FreeBSD__ > 3 +#include +#else #include +#endif #else #include #endif diff --git a/multimedia/xanim/files/patch-xa_color.c b/multimedia/xanim/files/patch-xa_color.c new file mode 100644 index 000000000000..178ff59d3192 --- /dev/null +++ b/multimedia/xanim/files/patch-xa_color.c @@ -0,0 +1,10 @@ +--- xa_color.c.orig 1999-03-21 22:36:25 UTC ++++ xa_color.c +@@ -2606,6 +2606,7 @@ xaULONG image_type; + + void *YUV2x2_Blk_Func(image_type,blks,dith_flag) + xaULONG image_type; ++xaULONG blks; + xaULONG dith_flag; + { void (*color_func)(); + if (blks == 1) diff --git a/multimedia/xanim/files/patch-xa_fli.c b/multimedia/xanim/files/patch-xa_fli.c new file mode 100644 index 000000000000..4921ad6e6b29 --- /dev/null +++ b/multimedia/xanim/files/patch-xa_fli.c @@ -0,0 +1,11 @@ +--- xa_fli.c.orig 1999-03-21 22:36:25 UTC ++++ xa_fli.c +@@ -126,7 +126,7 @@ Fli_Frame_Header *frame_hdr; + DEBUG_LEVEL1 fprintf(stderr," magic = %02x%02x\n",(int)tmp[5],(int)tmp[4]); + while( !( (tmp[5]==0xf1) && ((tmp[4]==0xfa) || (tmp[4] == 0x00)) ) ) + { +- for(i=0;i<6;i++) tmp[i] = tmp[i+1]; ++ for(i=0;i<4;i++) tmp[i] = tmp[i+1]; + tmp[5] = (xaUBYTE)xin->Read_U8(xin); + if (xin->At_EOF(xin,10)) return(0); + } diff --git a/multimedia/xanim/files/patch-xa_g72x.c b/multimedia/xanim/files/patch-xa_g72x.c new file mode 100644 index 000000000000..45fe554f751a --- /dev/null +++ b/multimedia/xanim/files/patch-xa_g72x.c @@ -0,0 +1,11 @@ +--- xa_g72x.c.orig 1999-03-21 22:36:25 UTC ++++ xa_g72x.c +@@ -32,6 +32,8 @@ + + #include "xa_g72x.h" + ++#include ++ + static short power2[15] = {1, 2, 4, 8, 0x10, 0x20, 0x40, 0x80, + 0x100, 0x200, 0x400, 0x800, 0x1000, 0x2000, 0x4000}; + diff --git a/multimedia/xanim/files/patch-xa_input.c b/multimedia/xanim/files/patch-xa_input.c index d0d03eb48c8a..a471f53d29a2 100644 --- a/multimedia/xanim/files/patch-xa_input.c +++ b/multimedia/xanim/files/patch-xa_input.c @@ -1,57 +1,57 @@ ---- xa_input.c.orig Sun Mar 21 23:36:25 1999 -+++ xa_input.c Thu Jun 7 15:02:43 2007 -@@ -1025,28 +1025,28 @@ +--- xa_input.c.orig 1999-03-21 22:36:25 UTC ++++ xa_input.c +@@ -1025,28 +1025,28 @@ char *machine, *user_cmd, *passwd_cmd, *file_cmd; memset(&data,0,sizeof(data)); memset(&from,0,sizeof(from)); if (gethostname(hostname, sizeof(hostname)) < 0) - return(xa_ftp_abort(xin)); + return(xa_ftp_abort(*xin)); if ((host= (struct hostent *)gethostbyname(hostname)) == 0) - return(xa_ftp_abort(xin)); + return(xa_ftp_abort(*xin)); data.sin_family = host->h_addrtype; memcpy( (char *)&data.sin_addr, (char *)host->h_addr_list[0], host->h_length); if ((tmp_sock = socket ( AF_INET , SOCK_STREAM , 0 )) < 0) - return(xa_ftp_abort(xin)); + return(xa_ftp_abort(*xin)); len = 1; if (setsockopt(tmp_sock, SOL_SOCKET, SO_REUSEADDR, (char *)(&len), sizeof(len)) < 0) - { close(tmp_sock); return(xa_ftp_abort(xin)); } + { close(tmp_sock); return(xa_ftp_abort(*xin)); } data.sin_port = 0; if ( bind(tmp_sock, (struct sockaddr *)&data, sizeof(data)) < 0 ) - { close(tmp_sock); return(xa_ftp_abort(xin)); } + { close(tmp_sock); return(xa_ftp_abort(*xin)); } len = sizeof(data); if (getsockname(tmp_sock, (struct sockaddr *)&data, &len) < 0 ) - { close(tmp_sock); return(xa_ftp_abort(xin)); } + { close(tmp_sock); return(xa_ftp_abort(*xin)); } if (listen(tmp_sock, 4) < 0 ) - { close(tmp_sock); return(xa_ftp_abort(xin)); } + { close(tmp_sock); return(xa_ftp_abort(*xin)); } /* POD add support for PORT command? */ addr = (xaUBYTE *) (&data.sin_addr); -@@ -1059,15 +1059,15 @@ +@@ -1059,15 +1059,15 @@ char *machine, *user_cmd, *passwd_cmd, *file_cmd; if (xa_ftp_send_cmd(xin, port_cmd, &retcode) == xaFALSE) { fprintf(stderr,"FTP: send cmd err\n"); - close(tmp_sock); return(xa_ftp_abort(xin)); } + close(tmp_sock); return(xa_ftp_abort(*xin)); } if (xa_ftp_send_cmd(xin, file_cmd, &retcode) == xaFALSE) { fprintf(stderr,"FTP: send cmd err\n"); - close(tmp_sock); return(xa_ftp_abort(xin)); } + close(tmp_sock); return(xa_ftp_abort(*xin)); } len = sizeof(from); xin->dsock = accept((int)tmp_sock, (struct sockaddr *) &from, (int *)&len); - if (xin->dsock < 0) { close(tmp_sock); return(xa_ftp_abort(xin)); } + if (xin->dsock < 0) { close(tmp_sock); return(xa_ftp_abort(*xin)); } close(tmp_sock); return(xaTRUE); } diff --git a/multimedia/xanim/files/patch-xa_vid_codec.c b/multimedia/xanim/files/patch-xa_vid_codec.c index 36e13f53bb22..470d92ba5459 100644 --- a/multimedia/xanim/files/patch-xa_vid_codec.c +++ b/multimedia/xanim/files/patch-xa_vid_codec.c @@ -1,37 +1,45 @@ ---- xa_vid_codec.c.orig Sun Apr 21 01:20:46 2002 -+++ xa_vid_codec.c Thu Jan 2 07:30:36 2003 -@@ -169,7 +169,9 @@ +--- xa_vid_codec.c.orig 2002-04-20 23:20:46 UTC ++++ xa_vid_codec.c +@@ -169,7 +169,9 @@ static void Check_For_Video_Modules() if ((mod_path == 0) || (*mod_path==0)) mod_path = "/usr/local/xanim/mods"; +#ifndef __FreeBSD__ fprintf(stderr,"ModPath: %s\n",mod_path);/*CLEAN*/ +#endif len = strlen( mod_path ); what_fun = (double)cos(45.0); -@@ -186,7 +188,9 @@ +@@ -186,7 +188,9 @@ static void Check_For_Video_Modules() dp = path_buf; +#ifndef __FreeBSD__ fprintf(stderr,"PathBuf: %s\n",dp);/*CLEAN*/ +#endif while( dp && *dp ) { char *t1p, *t2p; -@@ -211,10 +215,14 @@ +@@ -211,10 +215,14 @@ char *dir_name; char *end_of_dir; int len; +#ifndef __FreeBSD__ fprintf(stderr,"ScanDir: a\n");/*CLEAN*/ +#endif if (dir_name == 0) return; +#ifndef __FreeBSD__ fprintf(stderr,"ScanDir: %s\n",dir_name);/*CLEAN*/ +#endif DEBUG_LEVEL1 fprintf(stderr,"dirname: %s\n", dir_name ); +@@ -416,6 +424,7 @@ CODEC_LIST **list; + ****--------------------------------------------------------------------****/ + static void Video_Add_Codec_To_List( list, id, init_func, dec_func) + CODEC_LIST **list; ++xaULONG id; + xaLONG (*init_func)(); + xaULONG (*dec_func)(); + { diff --git a/multimedia/xanim/pkg-descr b/multimedia/xanim/pkg-descr index 415cc250f6e9..c26cecb66d38 100644 --- a/multimedia/xanim/pkg-descr +++ b/multimedia/xanim/pkg-descr @@ -1,51 +1,16 @@ XAnim is a program that can display animations of various formats on systems running X11. XAnim currently supports the following animation types: - + FLI animations. - + FLC animations. - + IFF animations. The following features are sup- - ported: - -> Compressions 3,5,7,J(movies) and l(small - L). - -> Color cycling during single images and - anims. - -> Display Modes: depth 1-8, EHB, HAM and - HAM8. - + GIF87a and GIF89a files. - -> single and multiple images supported. - -> GIF89a animation extensions supported. - + GIF89a animation extension support. - + a kludgy text file listing gifs and what order - to show them in. - + DL animations. Formats 1, 2 and partial 3. - + Amiga PFX(PageFlipper Plus F/X) animations. TEMP - DISABLED - + Amiga MovieSetter animations(For those Eric - Schwartz fans). - + Utah Raster Toolkit RLE images and anims. - + AVI animations. Currently supported are - -> IBM Ultimotion (ULTI) depth 16. - -> JPEG (JPEG) depth 24. - images. - + MPEG animations. Currently only Type I Frames - are displayed. Type B and Type P frames are cur- - rently ignored, but will be added in future - revs. - + WAV audio files may have their sound added to - any animation type that doesn't already have - audio, by specifying the .wav file after the - animation file on the command line. Currently - only the PCM audio codec is supported. - + any combination of the above on the same command - line. +FLI animations, FLC animations, IFF animations, +GIF87a, GIF89a, GIF89a animation extension +DL animations, Amiga PFX(PageFlipper Plus F/X) animations, +Amiga MovieSetter animations (For Eric Schwartz fans), +Utah Raster Toolkit RLE images and animations, +AVI animations, MPEG animations, WAV audio files XAnim also provides various options that allow the user to alter colormaps, playback speeds, looping modes and can provide on-the-fly scaling of animations with the mouse. LICENSE: freely used, copied and redistributed without fee for non-commerical purposes - -( http://xanim.va.pubnix.com/home.html ) -( http://xanim.resnet.gatech.edu/home.html ) -( http://smurfland.cit.buffalo.edu/xanim/home.html )