diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index dcb952e..0000000 --- a/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -xfig.3.2.4.full.tar.gz -xfig.3.2.5.full.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..26e4cf7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +xfig.3.2.5b.full.tar.gz +/xfig-icons.tar.gz +/xfig.3.2.5c.full.tar.gz +/xfig_3.2.5.c-8.debian.tar.xz +/xfig-full-3.2.6.tar.xz +/xfig-3.2.6.tar.xz +/xfig-3.2.6a.tar.xz +/xfig-3.2.7a.tar.xz +/xfig-3.2.7b.tar.xz +/xfig-3.2.8a.tar.xz +/xfig-3.2.8b.tar.xz +/xfig-3.2.9.tar.xz +/mcj-xfig-ce9782a404b6a527393839369aac13dcfb66ff16.zip diff --git a/Makefile b/Makefile deleted file mode 100644 index 7c47528..0000000 --- a/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -# Makefile for source rpm: xfig -# $Id$ -NAME := xfig -SPECFILE = $(firstword $(wildcard *.spec)) - -include ../common/Makefile.common diff --git a/sources b/sources index f5e4af5..221c443 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -fae0c67a3951bd41c057deb63b6aa47a xfig.3.2.5.full.tar.gz +SHA512 (mcj-xfig-ce9782a404b6a527393839369aac13dcfb66ff16.zip) = a0d483d77edb16d869596a53f89783efd232832b4447089227f34ff552836209f595e5cc9f179242386e85f6f8378607433913720aab29b9d69a2a4007404b47 +SHA512 (xfig-icons.tar.gz) = f7d9b314d57994d479712740dcac4a2c924ddacea028db1c6cdeef36fb7d846885c45d21499f7453c750c265eeb5877e4b032454911ce91667ccc550cb2112e5 diff --git a/xfig-3.2.4-redhat.patch b/xfig-3.2.4-redhat.patch deleted file mode 100644 index 094b41b..0000000 --- a/xfig-3.2.4-redhat.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- xfig.3.2.4/Fig.ad.redhat 2002-12-19 01:05:41.000000000 +0100 -+++ xfig.3.2.4/Fig.ad 2003-05-06 11:45:15.000000000 +0200 -@@ -11,7 +11,7 @@ - Fig*AllowShellResize: false - - ! Image editor - can edit imported image --Fig.image_editor: xv -+Fig.image_editor: display - - ! name of ghostscript (not ghostview) - Fig.ghostscript: gs -@@ -20,16 +20,16 @@ - ! This is for viewing the xfig html reference. - ! For netscape, this command will open the help pages in a running netscape, - ! or start a new netscape if one isn't already running --Fig.browser: netscape -remote 'openFile(%f)' || netscape %f -+Fig.browser: htmlview %f - - ! pdfviewer - put your favorite pdf viewer here. - ! This is for viewing the xfig how-to guide and man pages --Fig.pdfviewer: acroread %f -+Fig.pdfviewer: /usr/bin/xpdf %f - - ! Spell check program - put your favorite spelling check program here. - ! It must write the misspelled words to standard output. - --Fig.spellcheckcommand: spell %f -+Fig.spellcheckcommand: aspell %f - - ! delay before spinner automatically counts when pressed (milliseconds) - Fig.spinner_delay: 1000 diff --git a/xfig-3.2.5-fhs.patch b/xfig-3.2.5-fhs.patch deleted file mode 100644 index 02b98b6..0000000 --- a/xfig-3.2.5-fhs.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- xfig.3.2.5/Imakefile.fhs 2006-10-11 01:19:22.000000000 +0200 -+++ xfig.3.2.5/Imakefile 2007-04-16 14:04:45.000000000 +0200 -@@ -169,13 +169,11 @@ - XFIGLIBDIR = $(LIBDIR)/xfig - - XCOMM XFIGDOCDIR tells where the html and pdf documentation should go --XCOMM XFIGDOCDIR = $(DOCDIR)/xfig --XFIGDOCDIR = /usr/local/xfig/doc -+XFIGDOCDIR = $(DOCDIR)/xfig - - XCOMM MANDIR tells where the standard man pages should go (no need to change it - XCOMM if you want the man pages installed in the standard place on your system --XCOMM MANDIR = $(MANSOURCEPATH)$(MANSUFFIX) --MANDIR = /usr/local/xfig/man -+MANDIR = $(MANSOURCEPATH)$(MANSUFFIX) - - XCOMM If your system doesn't have strstr undefine the following definition - XCOMM HAVE_NO_NOSTRSTR = -DNOSTRSTR diff --git a/xfig-3.2.5-mkstemp.diff b/xfig-3.2.5-mkstemp.diff deleted file mode 100644 index c5b1af7..0000000 --- a/xfig-3.2.5-mkstemp.diff +++ /dev/null @@ -1,311 +0,0 @@ ---- xfig.3.2.5/f_readtif.c.mkstemp 2005-07-26 18:39:59.000000000 +0200 -+++ xfig.3.2.5/f_readtif.c 2007-04-16 14:05:22.000000000 +0200 -@@ -33,11 +33,16 @@ - { - char buf[2*PATH_MAX+40],pcxname[PATH_MAX]; - FILE *tiftopcx; -- int stat; -+ int stat, fd; - - /* make name for temp output file */ -- sprintf(pcxname, "%s/%s%06d.pix", TMPDIR, "xfig-pcx", getpid()); -- -+ snprintf(pcxname, sizeof(pcxname), "%s/xfig-pcx.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(pcxname)) == -1) { -+ file_msg("Cannot open temp file %s: %s\n", pcxname, strerror(errno)); -+ return FileInvalid; -+ } -+ close(fd); -+ - /* make command to convert tif to pnm then to pcx into temp file */ - /* for some reason, tifftopnm requires a file and can't work in a pipe */ - sprintf(buf, "tifftopnm %s 2> /dev/null | ppmtopcx > %s 2> /dev/null", ---- xfig.3.2.5/u_print.c.mkstemp 2006-02-24 21:18:11.000000000 +0100 -+++ xfig.3.2.5/u_print.c 2007-04-16 14:05:22.000000000 +0200 -@@ -92,9 +92,16 @@ - char syspr[2*PATH_MAX+200]; - char tmpfile[PATH_MAX]; - char *name; -+ int fd; - -- sprintf(tmpfile, "%s/%s%06d", TMPDIR, "xfig-print", getpid()); -+ snprintf(tmpfile, sizeof(tmpfile), "%s/xfig-print.XXXXXX", TMPDIR); - warnexist = False; -+ if ((fd = mkstemp(tmpfile)) == -1) { -+ file_msg("Can't open temp file %s: %s\n", tmpfile, strerror(errno)); -+ return; -+ } -+ close(fd); -+ - init_write_tmpfile(); - if (write_file(tmpfile, False)) { - end_write_tmpfile(); -@@ -648,10 +655,16 @@ - char errfname[PATH_MAX]; - FILE *errfile; - char str[400]; -- int status; -+ int status, fd; - - /* make temp filename for any errors */ -- sprintf(errfname, "%s/xfig-export%06d.err", TMPDIR, getpid()); -+ snprintf(errfname, sizeof(errfname), "%s/xfig-export.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(errfname)) == -1) { -+ file_msg("Can't open temp file %s: %s\n", errfname, strerror(errno)); -+ return 1; -+ } -+ close(fd); -+ - /* direct any output from fig2dev to this file */ - strcat(command, " 2> "); - strcat(command, errfname); ---- xfig.3.2.5/f_util.c.mkstemp 2007-01-16 18:58:18.000000000 +0100 -+++ xfig.3.2.5/f_util.c 2007-04-16 14:05:22.000000000 +0200 -@@ -906,14 +906,20 @@ - int strain_out(char *name) - { - char line[RC_BUFSIZ+1], *tok; -+ int fd; - - /* make a temp filename in the user's home directory so we - can just rename it to .xfigrc after creating it */ -- sprintf(tmpname, "%s/%s%06d", userhome, "xfig-xfigrc", getpid()); -- tmpf = fopen(tmpname,"wb"); -- if (tmpf == 0) { -- file_msg("Can't make temporary file for .xfigrc - error: %s",strerror(errno)); -- return -1; -+ snprintf(tmpname, sizeof(tmpname), "%s/xfig-xfigrc.XXXXXX", userhome); -+ -+ if ((fd = mkstemp(tmpname)) == -1 || (tmpf = fdopen(fd, "wb")) == NULL) { -+ file_msg("Can't make temporary file for .xfigrc - error: %s", -+ strerror(errno)); -+ if (fd != -1) { -+ unlink(tmpname); -+ close(fd); -+ } -+ return -1; - } - /* read the .xfigrc file and write all to temp file except file names */ - xfigrc = fopen(xfigrc_name,"r"); ---- xfig.3.2.5/main.c.mkstemp 2007-01-15 01:24:26.000000000 +0100 -+++ xfig.3.2.5/main.c 2007-04-16 14:05:22.000000000 +0200 -@@ -653,8 +653,10 @@ - update_figs = False; - - /* get the TMPDIR environment variable for temporary files */ -- if ((TMPDIR = getenv("XFIGTMPDIR"))==NULL) -- TMPDIR = "/tmp"; -+ if ((TMPDIR = getenv("XFIGTMPDIR"))==NULL) { -+ if ((TMPDIR = getenv("TMPDIR")) == NULL) -+ TMPDIR = "/tmp"; -+ } - - /* first check args to see if user wants to scale the figure as it is - read in and make sure it is a resonable (positive) number */ -@@ -1669,7 +1671,14 @@ - if (userhome != NULL && *strcpy(cut_buf_name, userhome) != '\0') { - strcat(cut_buf_name, "/.xfig"); - } else { -- sprintf(cut_buf_name, "%s/xfig%06d", TMPDIR, getpid()); -+ int fd; -+ sprintf(cut_buf_name, "%s/xfig.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(cut_buf_name)) == -1) { -+ fprintf(stderr, "Can't create temporary file for cut_buff: %s\n", -+ strerror(errno)); -+ exit(0); -+ } -+ close(fd); - } - } - ---- xfig.3.2.5/w_print.c.mkstemp 2005-07-26 18:40:01.000000000 +0200 -+++ xfig.3.2.5/w_print.c 2007-04-16 14:05:22.000000000 +0200 -@@ -294,9 +294,10 @@ - do_print_batch(Widget w) - { - FILE *infp,*outfp; -- char tmp_exp_file[32]; -+ char tmp_exp_file[PATH_MAX]; - char str[255]; - char backgrnd[10], grid[80]; -+ int fd; - - if (writing_batch || emptyfigure_msg(print_msg)) - return; -@@ -305,11 +306,20 @@ - /* this could happen if the user presses the button too fast */ - writing_batch = True; - -- /* make a temporary name to write the batch stuff to */ -- sprintf(batch_file, "%s/%s%06d", TMPDIR, "xfig-batch", getpid()); - /* make a temporary name to write this figure to */ -- sprintf(tmp_exp_file, "%s/%s%06d", TMPDIR, "xfig-exp", getpid()); -- batch_exists = True; -+ snprintf(tmp_exp_file, sizeof(tmp_exp_file), "%s/xfig-exp.XXXXXX", -+ TMPDIR); -+ -+ if (batch_exists != True) { -+ /* make a temporary name to write the batch stuff to */ -+ sprintf(batch_file, "%s/xfig-batch.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(batch_file)) == -1) { -+ file_msg("Error creating temporary file"); -+ return; -+ } -+ close(fd); -+ batch_exists = True; -+ } - if (!print_popup) - create_print_panel(w); - -@@ -322,6 +332,12 @@ - /* make a #rrggbb string from the background color */ - make_rgb_string(export_background_color, backgrnd); - -+ if ((fd = mkstemp(tmp_exp_file)) == -1) { -+ file_msg("Error creating temporary file"); -+ return; -+ } -+ close(fd); -+ - /* get grid params and assemble into fig2dev parm */ - get_grid_spec(grid, print_grid_minor_text, print_grid_major_text); - ---- xfig.3.2.5/f_readppm.c.mkstemp 2005-07-26 18:39:59.000000000 +0200 -+++ xfig.3.2.5/f_readppm.c 2007-04-16 14:05:22.000000000 +0200 -@@ -34,10 +34,16 @@ - { - char buf[BUFLEN],pcxname[PATH_MAX]; - FILE *giftopcx; -- int stat, size; -+ int stat, size, fd; - - /* make name for temp output file */ -- sprintf(pcxname, "%s/%s%06d.pix", TMPDIR, "xfig-pcx", getpid()); -+ snprintf(pcxname, sizeof(pcxname), "%s/xfig-pcx.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(pcxname)) == -1) { -+ file_msg("Cannot open temp file %s: %s\n", pcxname, strerror(errno)); -+ return FileInvalid; -+ } -+ close(fd); -+ - /* make command to convert gif to pcx into temp file */ - sprintf(buf, "ppmtopcx > %s 2> /dev/null", pcxname); - if ((giftopcx = popen(buf,"w" )) == 0) { ---- xfig.3.2.5/f_readgif.c.mkstemp 2005-07-26 18:39:59.000000000 +0200 -+++ xfig.3.2.5/f_readgif.c 2007-04-16 14:05:22.000000000 +0200 -@@ -76,7 +76,7 @@ - char buf[BUFLEN],pcxname[PATH_MAX]; - FILE *giftopcx; - struct Cmap localColorMap[MAX_COLORMAP_SIZE]; -- int i, stat, size; -+ int i, stat, size, fd; - int useGlobalColormap; - unsigned int bitPixel, red, green, blue; - unsigned char c; -@@ -173,7 +173,13 @@ - /* now call giftopnm and ppmtopcx */ - - /* make name for temp output file */ -- sprintf(pcxname, "%s/%s%06d.pix", TMPDIR, "xfig-pcx", getpid()); -+ snprintf(pcxname, sizeof(pcxname), "%s/xfig-pcx.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(pcxname)) == -1) { -+ file_msg("Cannot create temporary file\n"); -+ return FileInvalid; -+ } -+ close(fd); -+ - /* make command to convert gif to pcx into temp file */ - sprintf(buf, "giftopnm | ppmtopcx > %s 2> /dev/null", pcxname); - if ((giftopcx = popen(buf,"w" )) == 0) { ---- xfig.3.2.5/w_srchrepl.c.mkstemp 2005-07-26 18:40:02.000000000 +0200 -+++ xfig.3.2.5/w_srchrepl.c 2007-04-16 14:05:22.000000000 +0200 -@@ -788,7 +788,7 @@ - char *cmd; - char str[300]; - FILE *fp; -- int len, i; -+ int len, i, fd; - Boolean done = FALSE; - static int lines = 0; - -@@ -804,9 +804,12 @@ - } - lines = 0; - -- sprintf(filename, "%s/xfig-spell.%d", TMPDIR, (int)getpid()); -- fp = fopen(filename, "w"); -- if (fp == NULL) { -+ snprintf(filename, sizeof(filename), "%s/xfig-spell.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(filename)) == -1 || (fp = fdopen(fd, "w")) == NULL) { -+ if (fd != -1) { -+ unlink(filename); -+ close(fd); -+ } - file_msg("Can't open temporary file: %s: %s\n", filename, strerror(errno)); - } else { - /* locate all text objects and write them to file fp */ ---- xfig.3.2.5/f_readeps.c.mkstemp 2005-10-31 18:40:38.000000000 +0100 -+++ xfig.3.2.5/f_readeps.c 2007-04-16 14:19:32.000000000 +0200 -@@ -250,11 +250,10 @@ - int urx, llx, ury, lly; - int pdf_flag; - { -- static tempseq = 0; - char buf[300]; - FILE *tmpfp, *pixfile, *gsfile; - char *psnam, *driver; -- int status, wid, ht, nbitmap; -+ int status, wid, ht, nbitmap, fd; - char tmpfile[PATH_MAX], - pixnam[PATH_MAX], - errnam[PATH_MAX], -@@ -270,8 +269,12 @@ - /* re-open the pipe */ - close_picfile(file, filetype); - file = open_picfile(tmpfile, &filetype, PIPEOK, pixnam); -- sprintf(tmpfile, "%s/%s%06d", TMPDIR, "xfig-eps", getpid()); -- if ((tmpfp = fopen(tmpfile, "wb")) == NULL) { -+ snprintf(tmpfile, sizeof(tmpfile), "%s/xfig-eps.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(tmpfile)) == -1 || (tmpfp = fdopen(fd, "wb")) == NULL) { -+ if (fd != -1) { -+ unlink(tmpfile); -+ close(fd); -+ } - file_msg("Couldn't open tmp file %s, %s", tmpfile, strerror(errno)); - return False; - } -@@ -280,10 +283,20 @@ - fclose(tmpfp); - } - /* make name /TMPDIR/xfig-pic######.pix */ -- sprintf(pixnam, "%s/%s%06d.pix", TMPDIR, "xfig-pic", tempseq); -+ snprintf(pixnam, sizeof(pixnam), "%s/xfig-pic.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(pixnam)) == -1) { -+ file_msg("Couldn't open tmp file %s, %s", pixnam, strerror(errno)); -+ return False; -+ } -+ close(fd); -+ - /* and file name for any error messages from gs */ -- sprintf(errnam, "%s/%s%06d.err", TMPDIR, "xfig-pic", tempseq); -- tempseq++; -+ snprintf(errnam, sizeof(errnam), "%s/xfig-picerr.XXXXXX", TMPDIR); -+ if ((fd = mkstemp(errnam)) == -1) { -+ file_msg("Couldn't open tmp file %s, %s", errnam, strerror(errno)); -+ return False; -+ } -+ close(fd); - - /* generate gs command line */ - /* for monochrome, use pbm */ ---- xfig.3.2.5/mode.c.mkstemp 2005-07-26 18:40:00.000000000 +0200 -+++ xfig.3.2.5/mode.c 2007-04-16 14:05:22.000000000 +0200 -@@ -86,7 +86,7 @@ - - int cur_exp_lang; /* gets initialized in main.c */ - Boolean batch_exists = False; --char batch_file[32]; -+char batch_file[PATH_MAX]; - - /*******************************************************************/ - /* If you change the order of the lang_items[] you must change the */ diff --git a/xfig-3.2.5-pdfviewer.patch b/xfig-3.2.5-pdfviewer.patch deleted file mode 100644 index f479741..0000000 --- a/xfig-3.2.5-pdfviewer.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- xfig.3.2.5/Fig.ad.pdfviewer 2007-04-16 14:31:39.000000000 +0200 -+++ xfig.3.2.5/Fig.ad 2007-04-16 14:31:56.000000000 +0200 -@@ -24,7 +24,7 @@ - - ! pdfviewer - put your favorite pdf viewer here. - ! This is for viewing the xfig how-to guide and man pages --Fig.pdfviewer: /usr/bin/xpdf %f -+Fig.pdfviewer: /usr/bin/evince %f - - ! Spell check program - put your favorite spelling check program here. - ! It must write the misspelled words to standard output. diff --git a/xfig.3.2.5-Xaw3d.patch b/xfig.3.2.5-Xaw3d.patch deleted file mode 100644 index 75799f9..0000000 --- a/xfig.3.2.5-Xaw3d.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- xfig.3.2.5/Imakefile.Xaw3d 2007-04-16 14:56:58.000000000 +0200 -+++ xfig.3.2.5/Imakefile 2007-04-16 14:57:26.000000000 +0200 -@@ -50,7 +50,7 @@ - XCOMM Uncomment the following definition for XAW3D if you want to use - XCOMM the 3d Athena Widget Set (highly recommended!) - --#define XAW3D -+XCOMM #define XAW3D - - XCOMM Uncomment the following if you have David Hawkey's Xaw3D version 1.5E which has - XCOMM some new features, including "Tips", which replace xfig's "help balloons" diff --git a/xfig.3.2.5-modularX.patch b/xfig.3.2.5-modularX.patch deleted file mode 100644 index 9f7d871..0000000 --- a/xfig.3.2.5-modularX.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- xfig.3.2.5/Imakefile.modularX 2007-04-16 14:27:49.000000000 +0200 -+++ xfig.3.2.5/Imakefile 2007-04-16 14:29:18.000000000 +0200 -@@ -45,7 +45,7 @@ - XCOMM different tree than the "correct" tree that your X system expects. The usual - XCOMM purpose of DESTDIR is to test an install process by installing in a benign area. - --XCOMM XAPPLOADDIR = /home/user/xfig -+XAPPLOADDIR = /usr/share/X11/app-defaults - - XCOMM Uncomment the following definition for XAW3D if you want to use - XCOMM the 3d Athena Widget Set (highly recommended!) -@@ -166,14 +166,14 @@ - XCOMM XFIGLIBDIR = $(LIBDIR) - - XCOMM use this if you want the multi-key data base file in the standard X11 tree --XFIGLIBDIR = $(LIBDIR)/xfig -+XFIGLIBDIR = /usr/share/xfig - - XCOMM XFIGDOCDIR tells where the html and pdf documentation should go - XFIGDOCDIR = $(DOCDIR)/xfig - - XCOMM MANDIR tells where the standard man pages should go (no need to change it - XCOMM if you want the man pages installed in the standard place on your system --MANDIR = $(MANSOURCEPATH)$(MANSUFFIX) -+MANDIR = /usr/share/man/man1 - - XCOMM If your system doesn't have strstr undefine the following definition - XCOMM HAVE_NO_NOSTRSTR = -DNOSTRSTR diff --git a/xfig.desktop b/xfig.desktop deleted file mode 100644 index 5827357..0000000 --- a/xfig.desktop +++ /dev/null @@ -1,48 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Categories=Application;Graphics;X-Red-Hat-Extra; -X-Desktop-File-Install-Version=0.2 -MimeType=image/fig;image/x-xfig; -Exec=xfig -Icon=xfig -Type=Application -Name=Xfig -Name[eo]=XDesegno -Name[et]=Ffig -Name[ja]=xfig -Name[no]=X-figur -Comment=Xfig drawing application -Comment[bg]=Xfig ïðîãðàìà çà ðèñóâàíå -Comment[ca]=Aplicació de dibuix Xfig -Comment[cs]=Aplikace pro kreslení vektorových obrázků -Comment[da]=Xfig tegneprogram -Comment[de]=Xfig-Zeichenprogramm -Comment[el]=Εφαρμογή ζωγραφικής Xfig -Comment[eo]=Desegnilo "Xfig" -Comment[es]=Aplicación de diseño vectorial (objetos) -Comment[et]=XFig joonistusprogramm -Comment[fi]=Xfig vektoripiirto-ohjelma -Comment[fr]=Programme de dessin objet Xfig -Comment[gl]=Aplicación de debuxo (obxectos) -Comment[he]=Xfig רויצה םושיי -Comment[hr]=Program za crtanje -Comment[hu]=Rajzolóprogram -Comment[is]=Hlutbundið teikniforrit -Comment[it]=Applicazione di disegno Xfig -Comment[lt]=Xfig braižymo programa -Comment[mk]=Едноставна апликација за векторско цртање -Comment[nl]=Xfig-tekenprogramma -Comment[no]=Xfig-tegneprogram -Comment[no_NY]=Teikneprogrammet Xfig -Comment[pl]=Aplikacja do kreślenia -Comment[pt]=Aplicação de desenho -Comment[ro]=Program de desenare vectorială -Comment[ru]=Приложения для рисования векторной графики -Comment[sk]=Xfig aplikácia pre kreslenie vektorových obrázkov -Comment[sl]=Program za risanje Xfig -Comment[sr]=Xfig prgram za vektorsko crtanje -Comment[sv]=Xfig ritprogram -Comment[ta]=Xfig Ũþø ÀÂýÀ¡Î -Comment[tr]=Xfig çizim uygulaması -Comment[uk]=Програма для утворення зображень Xfig -Comment[zh_CN.GB2312]=Xfig 绘图应用程序 diff --git a/xfig.png b/xfig.png deleted file mode 100644 index c0d68e9..0000000 Binary files a/xfig.png and /dev/null differ diff --git a/xfig.rpmlintrc b/xfig.rpmlintrc new file mode 100644 index 0000000..e87b437 --- /dev/null +++ b/xfig.rpmlintrc @@ -0,0 +1,5 @@ +addFilter("W: invalid-url Source1") +addFilter("W: no-%check-section") +addFilter("W: files-duplicate /usr/share/") +addFilter("E: non-executable-script /usr/share/xfig/Libraries/Maps/") +addFilter("E: spelling-error") diff --git a/xfig.spec b/xfig.spec index 30489d9..2443f40 100644 --- a/xfig.spec +++ b/xfig.spec @@ -1,43 +1,50 @@ -%define app_defaults_dir %{_datadir}/X11/app-defaults +%global commit ce9782a404b6a527393839369aac13dcfb66ff16 +%global commitdate 20250317 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) -Summary: An X Window System tool for drawing basic vector graphics. +Summary: An X Window System tool for drawing basic vector graphics Name: xfig -Version: 3.2.5 -Release: 1%{?dist} -License: Freeware -Group: Applications/Multimedia -URL: http://www.xfig.org/ -Source0: http://www.xfig.org/xfigdist/xfig.%{version}.full.tar.gz -Source1: xfig.png -Source2: xfig.desktop - -Patch0: xfig-3.2.4-redhat.patch -Patch1: xfig-3.2.5-fhs.patch -Patch2: xfig-3.2.5-mkstemp.diff -Patch7: xfig.3.2.5-modularX.patch -Patch8: xfig-3.2.5-pdfviewer.patch -Patch9: xfig.3.2.5-Xaw3d.patch - -Requires: transfig >= 1:3.2.5 -Requires: evince -Requires: ImageMagick -Requires: aspell -Requires: htmlview +Version: 3.2.9a +Release: 3.%{commitdate}git%{shortcommit}%{?dist} +License: MIT +URL: https://en.wikipedia.org/wiki/Xfig +#Source0: http://downloads.sourceforge.net/mcj/xfig-%%{version}.tar.xz +Source0: https://sourceforge.net/code-snapshots/git/m/mc/mcj/xfig.git/mcj-xfig-%{commit}.zip +Source1: xfig-icons.tar.gz +BuildRequires: make +BuildRequires: gcc libtool +BuildRequires: transfig BuildRequires: libjpeg-devel BuildRequires: libpng-devel -BuildRequires: imake +BuildRequires: libtiff-devel BuildRequires: libICE-devel BuildRequires: libSM-devel BuildRequires: libX11-devel +BuildRequires: libXft-devel BuildRequires: libXaw-devel BuildRequires: libXext-devel BuildRequires: libXi-devel BuildRequires: libXmu-devel BuildRequires: libXpm-devel BuildRequires: libXt-devel +BuildRequires: Xaw3d-devel +BuildRequires: man2html-core ImageMagick +# For eps preview generation +Requires: ghostscript +Requires: transfig +# Used in the UI +Requires: xorg-x11-fonts-misc +# For scalable fonts, inc. Bookman, New Century Schoolbook and Palatino +Requires: urw-base35-fonts-legacy -Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +# We used to have seperate Xaw3d and non Xaw3d pkgs, now we only have Xaw3d +Obsoletes: %{name}-common < %{version}-%{release} +Provides: %{name}-common = %{version}-%{release} +Obsoletes: %{name}-plain < %{version}-%{release} +Provides: %{name}-plain = %{version}-%{release} +Obsoletes: %{name}-Xaw3d < %{version}-%{release} +Provides: %{name}-Xaw3d = %{version}-%{release} %description Xfig is an X Window System tool for creating basic vector graphics, @@ -49,289 +56,202 @@ PostScript, LaTeX). You should install xfig if you need a simple program to create vector graphics. + %prep -%setup -q -n xfig.%{version} -%patch0 -p1 -b .redhat -%patch1 -p1 -b .fhs -%patch2 -p1 -b .mkstemp -%patch7 -p1 -b .modularX -%patch8 -p1 -b .pdfviewer -%patch9 -p1 -b .Xaw3d +%autosetup -p1 -a 1 -n mcj-xfig-%{commit} +for i in doc/html/japanese/button_frame.fig doc/html/japanese/japanese.ps \ + doc/html/animate.js; do + sed -i.orig 's/\r//' $i; touch -r $i.orig $i; rm $i.orig +done +autoreconf -i + %build -xmkmf -ln -nfs Doc/xfig.man xfig.man -make XFIGDOCDIR=%{_docdir}/%{name}-%{version} +# Fedora's Xaw3d is built with -DXAW_ARROW_SCROLLBARS +export CFLAGS="-DXAW_ARROW_SCROLLBARS $RPM_OPT_FLAGS -fno-strength-reduce -fno-strict-aliasing" +%configure +%make_build + %install -rm -rf %{buildroot} +%make_install INSTALL="install -p" +cp -p README CHANGES FIGAPPS $RPM_BUILD_ROOT%{_docdir}/%{name} -make DESTDIR=%{buildroot} \ - XFIGDOCDIR=%{_docdir}/%{name}-%{version} \ - XAPPLOADDIR=%{app_defaults_dir} \ - CONFDIR=%{_datadir}/X11 \ - install install.all +rm -r $RPM_BUILD_ROOT%{_datadir}/pixmaps +mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/{16x16,32x32,64x64}/apps +convert %{name}16x16.xpm \ + $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png +convert %{name}32x32.xpm \ + $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png +convert %{name}64x64.xpm \ + $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps/%{name}.png -mkdir -p %{buildroot}%{_datadir}/pixmaps \ - %{buildroot}%{_datadir}/applications - -install -m 644 %{SOURCE1} %{buildroot}%{_datadir}/pixmaps -install -m 644 %{SOURCE2} %{buildroot}%{_datadir}/applications/net-xfig.desktop - -rm -fr %{buildroot}%{_prefix}/lib* - -%clean -rm -rf %{buildroot} %files -%defattr(-,root,root) -%doc %{_docdir}/%{name}-%{version} -%attr(0755,root,root) %{_bindir}/* -%{_datadir}/%{name}/* -%{_mandir}/*/* -%{_datadir}/pixmaps/%{name}.png -%{app_defaults_dir}/* -%{_datadir}/applications/* +%doc %{_docdir}/%{name} +%{_bindir}/%{name} +%{_datadir}/%{name} +%{_mandir}/man1/%{name}.1* +%{_datadir}/X11/app-defaults/Fig +%{_datadir}/metainfo/org.xfig.xfig.metainfo.xml +%{_datadir}/applications/org.xfig.xfig.desktop +%{_datadir}/icons/hicolor/??x??/apps/%{name}.png + %changelog -* Mon Apr 16 2007 Than Ngo - 3.2.5-1.fc7 -- 3.2.5 +* Fri Jul 17 2026 Fedora Release Engineering - 3.2.9a-3.20250317gitce9782a +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild -* Wed Jul 12 2006 Jesse Keating - 3.2.4-21.1 -- rebuild +* Sat Jan 17 2026 Fedora Release Engineering - 3.2.9a-2.20250317gitce9782a +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild -* Tue May 16 2006 Than Ngo 3.2.4-21 -- fix #191816, Xaw3d build problem +* Wed Aug 6 2025 Hans de Goede - 3.2.9a-1.20250317gitce9782a +- Update to 3.2.9a + latest git changes to fix build with -std=c11 +- Switch to upstream appdata/metainfo and desktop file +- Drop all patches (all upstreamed) +- Resolves: rhbz#2341567 +- Resolves: rhbz#2385740 -* Fri May 05 2006 Than Ngo 3.2.4-20 -- fix #169330, wrong docdir -- fix #187902, no parameter negotiation for xfig -- fix #182451, switch xfig's pdf viewer to evince +* Fri Jul 25 2025 Fedora Release Engineering - 3.2.9-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild -* Tue Apr 25 2006 Adam Jackson 3.2.4-19 -- Rebuild for updated imake build rules +* Sun Jan 19 2025 Fedora Release Engineering - 3.2.9-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild -* Tue Apr 04 2006 Than Ngo 3.2.4-18 -- no parameter negotiation for xfig, fix #187902 +* Sat Jul 20 2024 Fedora Release Engineering - 3.2.9-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild -* Fri Feb 10 2006 Jesse Keating - 3.2.4-17.2 -- bump again for double-long bug on ppc(64) +* Mon Feb 26 2024 Hans de Goede - 3.2.9-4 +- Fix missing Dingbats and Symbol glyphs +- Resolves: rhbz#2260359 -* Tue Feb 07 2006 Jesse Keating - 3.2.4-17.1 -- rebuilt for new gcc4.1 snapshot and glibc changes +* Sat Jan 27 2024 Fedora Release Engineering - 3.2.9-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild -* Wed Dec 21 2005 Than Ngo 3.2.4-17 -- workaround for utf8 +* Thu Jan 18 2024 Mamoru TASAKA - 3.2.9-2 +- Backport upstream patches for upstream 2 issues + - Fix exporting only active layers + - Sanitize a call to realloc (redhat #2252679) -* Sun Dec 18 2005 Than Ngo 3.2.4-16 -- add correct app-defaults directory +* Sat Aug 26 2023 Ranjan Maitra - 3.2.9-1 +- New upstream release 3.2.9 -* Fri Dec 09 2005 Jesse Keating -- rebuilt +* Sat Jan 21 2023 Fedora Release Engineering - 3.2.8b-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild -* Tue Nov 15 2005 Than Ngo 3.2.4-15 -- fix for modular X +* Sat Jul 23 2022 Fedora Release Engineering - 3.2.8b-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild -* Mon Oct 24 2005 Than Ngo 3.2.4-14 -- enable xpm support #158422 +* Sat Jan 22 2022 Fedora Release Engineering - 3.2.8b-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild -* Tue Jul 19 2005 Than Ngo 3.2.4-13 -- buildrequires on xorg-x11-devel +* Mon Oct 11 2021 Hans de Goede - 3.2.8b-1 +- New upstream release 3.2.8b -* Mon Jul 18 2005 Than Ngo 3.2.4-12 -- fix another buffer overflow #163413 +* Fri Jul 23 2021 Fedora Release Engineering - 3.2.8a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild -* Thu May 19 2005 Than Ngo 3.2.4-11 -- apply patch to fix buffer overflow #158088 +* Sat May 29 2021 Hans de Goede - 3.2.8a-1 +- New upstream release 3.2.8a -* Mon Mar 21 2005 Than Ngo 3.2.4-10 -- fix font warning #116542 +* Thu Jan 28 2021 Fedora Release Engineering - 3.2.7b-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild -* Mon Mar 07 2005 Than Ngo 3.2.4-9 -- cleanup +* Sat Aug 01 2020 Fedora Release Engineering - 3.2.7b-4 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild -* Sat Mar 05 2005 Than Ngo 3.2.4-8 -- rebuilt +* Wed Jul 29 2020 Fedora Release Engineering - 3.2.7b-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild -* Wed Feb 09 2005 Than Ngo 3.2.4-7 -- rebuilt +* Fri Jan 31 2020 Fedora Release Engineering - 3.2.7b-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild -* Sat Sep 25 2004 Than Ngo 3.2.4-6 -- add mimetype spec #131629 +* Thu Jan 16 2020 Hans de Goede - 3.2.7b-1 +- New upstream release 3.2.7b -* Mon Sep 13 2004 Than Ngo 3.2.4-5 -- fix desktop file #131983 +* Sat Jul 27 2019 Fedora Release Engineering - 3.2.7a-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild -* Tue Jun 15 2004 Elliot Lee -- rebuilt +* Sun Feb 03 2019 Fedora Release Engineering - 3.2.7a-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild -* Fri Feb 13 2004 Elliot Lee -- rebuilt +* Fri Jan 11 2019 Hans de Goede - 3.2.7a-2 +- Fix spline drawing (rhbz#1665237) -* Wed Jun 04 2003 Elliot Lee -- rebuilt +* Mon Oct 29 2018 Hans de Goede - 3.2.7a-1 +- New upstream release 3.2.7a +- Add Requires: transfig to make sure esp export works (rhbz#1642033) +- Switch back to URW fonts so that Bookman, New Century Schoolbook and + Palatino work again. This uses the old version of the URW fonts which are + now packaged as urw-base35-fonts-legacy (rhbz#1523624, rhbz#1551219) +- Trim the changelog -* Tue Jun 3 2003 Jeff Johnson -- add explicit epoch's where needed. +* Sat Jul 14 2018 Fedora Release Engineering - 3.2.6a-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild -* Tue May 6 2003 Than Ngo 3.2.4-1 -- 3.2.4 +* Sat Mar 03 2018 Hans de Goede - 3.2.6a-7 +- Fix font issues take 2 (rhbz#1523624) : + - It turns out the new urw fonts are completely unusuable as X11 core fonts, + stop using them for now (see bug rhbz#1551219) + - Add a patch to use the fallback fonts for non-scalable fonts too, so that + we at least show something somewhat reasonable for Bookman, New Century + Schoolbook and Palatino + - This means that display of Zapf Chancery and Zapf Dingbats currently + falls back to the "fixed" font, which is completely wrong for Dingbats -* Wed Jan 22 2003 Tim Powers -- rebuilt +* Thu Mar 01 2018 Hans de Goede - 3.2.6a-6 +- Fix font issues (rhbz#1523624) : + - Adjust xfig-3.2.5-urwfonts.patch for new font names in urw-base35-fonts + - Except for the symbols font, use the old un-scalable Adobe PCF Symbol font + for now as StandardSymbolsPS.otf from urw-base35-fonts is currently broken + - Add a patch to deal with some fonts being scalable, while Symbol is not + - Note the dingbats font is also broken in urw-base35-fonts, but there is no + replacement for it, so that font is still broken, see rhbz#1534206 +- ghostscript-core no longer exists, instead require ghostscript (rhbz#1536581) +- Remove obsolete icon-cache and desktop-database scriptlets +- Add a patch from Debian fixing some issues with arrows -* Thu Nov 7 2002 Than Ngo 3.2.3d-11 -- rebuild in new enviroment +* Fri Feb 09 2018 Fedora Release Engineering - 3.2.6a-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild -* Thu Aug 22 2002 Than Ngo 3.2.3d-10 -- close should get fd, not filename +* Tue Nov 07 2017 Adam Jackson - 3.2.6a-4 +- Drop unneeded BuildRequires: imake -* Wed Jul 31 2002 Than Ngo 3.2.3d-9 -- Fixed typo bug (bug #70347) +* Thu Aug 03 2017 Fedora Release Engineering - 3.2.6a-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild -* Wed Jul 24 2002 Than Ngo 3.2.3d-8 -- desktop file issue (bug #69543) +* Thu Jul 27 2017 Fedora Release Engineering - 3.2.6a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild -* Tue Jun 25 2002 Than Ngo 3.2.3d-7 -- add patch file using mkstemp (bug #67351) +* Mon Feb 13 2017 Hans de Goede - 3.2.6a-1 +- New upstream release 3.2.6a -* Fri Jun 21 2002 Tim Powers -- automated rebuild +* Sun Feb 12 2017 Hans de Goede - 3.2.6-5 +- Build with -DGSBIT to fix eps file preview generation (rhbz#1418560) +- Fix broken screenshot links in appdata -* Thu May 23 2002 Tim Powers -- automated rebuild +* Sat Feb 11 2017 Fedora Release Engineering - 3.2.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild -* Wed Jan 09 2002 Tim Powers -- automated rebuild +* Fri Aug 12 2016 Hans de Goede - 3.2.6-3 +- Switch to non -full (smaller) version of upstream sources, + we package transfig seperately so we do not need the -full version -* Fri Jul 13 2001 Than Ngo 3.2.3d-3 -- fix build dependencies (bug #48910) +* Thu Aug 11 2016 Hans de Goede - 3.2.6-2 +- Make using metric units the default again -* Tue Jul 03 2001 Than Ngo -- fix export to eps when i18n set (bug #45114) -- requires transfig-3.2.3d - -* Fri Jun 15 2001 Than Ngo -- update to 3.2.3d release - -* Tue Jun 12 2001 Than Ngo -- fix to build against XFree86-4.1.0 - -* Tue May 29 2001 Than Ngo -- update to 3.2.3d beta2 fixes (Bug #42597, #42556) -- fix bug when LANG is set, launching help gives a spurious error (Bug #42596) -- fix bug in resource setting (Bug #42595) -- remove some patches, which are included in 3.2.3d beta2 -- fix wrong version number -- use make install.all -- fix fhs problem - -* Wed May 9 2001 Bernhard Rosenkraenzer -- Don't require Netscape at all - use htmlview (which automatically launches - Netscape, Mozilla or Konqueror depending on what is installed/running). - No need to depend on proprietary stuff... - -* Thu Apr 26 2001 Florian La Roche -- do the same for s390x - -* Sat Jan 06 2001 Florian La Roche -- only require /usr/bin/netscape if not on S390 - -* Tue Dec 20 2000 Yukihiro Nakai -- Delete enable_japanese macro and set i18n default. -- Fix Japanese translation in .desktop file - -* Mon Nov 20 2000 Than Ngo -- rebuilt to fix bad dir perms - -* Thu Nov 9 2000 Than Ngo -- fixed f_read, which made xfig stop reading the file after - removing such bad objects. - -* Fri Oct 13 2000 Preston Brown -- improved .desktop entry - -* Thu Aug 24 2000 Yukihiro Nakai -- Add Japanese patch - -* Tue Aug 08 2000 Than Ngo -- fixed dependency problem -- fixed starting xpdf - -* Mon Aug 07 2000 Than Ngo -- fixed for using xpdf instead acroreader (Bug #15621) -- add requires: netscape, display - -* Sat Aug 05 2000 Than Ngo -- update to 3.2.3c (bugs fixed released) -- fix parse_printcap broken (Bug #11147) - -* Thu Jul 13 2000 Prospector -- automatic rebuild - -* Fri Jun 23 2000 Than Ngo -- xfig crash, if a menu item was clicked (Bug #12855) - -* Sun Jun 18 2000 Than Ngo -- rebuilt in the new build environment -- enable optimization - -* Sat Jun 03 2000 Than Ngo -- fix requires, xfig-3.2.3a requires transfig-2.2.3 or newer -- disable optimization -O2 (gcc-2.96 Bug) on i386 - -* Thu May 18 2000 Preston Brown -- fix buildroot issue in Imakefile - -* Mon May 8 2000 Bernhard Rosenkraenzer -- rebuild with current libXaw3d -- update to 3.2.3a - -* Mon Feb 07 2000 Preston Brown -- rebuild to gzip man pages - -* Fri Jan 14 2000 Preston Brown -- upgrade to beta1 of 2.2.3. Hopefully this fixes outstanding issues. -- no need for vararg fix, commented out - -* Thu Sep 23 1999 Preston Brown -- add icon -- don't compile with optimization on alpha - -* Mon Aug 30 1999 Preston Brown -- converted to use a .desktop file - -* Fri Mar 26 1999 Michael Maher -- added files that were missing. - -* Sun Mar 21 1999 Cristian Gafton -- auto rebuild in the new build environment (release 4) -- varargs fix - -* Thu Feb 18 1999 Jeff Johnson -- correct DESTDIRR typo (#962) - -* Wed Dec 30 1998 Cristian Gafton -- build for glibc 2.1 - -* Tue Jul 7 1998 Jeff Johnson -- updated to 3.2.2. - -* Wed Jun 10 1998 Prospector System -- translations modified for de - -* Fri May 08 1998 Prospector System -- translations modified for de, fr, tr - -* Sat Apr 11 1998 Cristian Gafton -- updated for manhattan -- buildroot - -* Thu Oct 23 1997 Marc Ewing -- new version -- messed with config for 5.0 -- updated Requires and Copyright -- added wmconfig - -* Mon Jul 21 1997 Erik Troan -- built against glibc +* Thu Aug 11 2016 Hans de Goede - 3.2.6-1 +- New upstream release 3.2.6 +- Drop all patches, all fixes are upstream now +- Drop -plain subpackage, only build Xaw3d version +- Update appdata screenshots for xfig.org being gone + (point to http://epb.lbl.gov/xfig/ for now) + +* Sun Feb 28 2016 Hans de Goede - 3.2.5-48.c +- Bring in various bugfixes from Debian +- Convert icons to png +- Add appdata + +* Fri Feb 05 2016 Fedora Release Engineering - 3.2.5-47.c +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild