package init

This commit is contained in:
wisdoman 2020-02-18 09:59:27 +08:00
parent 6d8c63a80d
commit a46340e014
8 changed files with 398 additions and 0 deletions

12
gnuplot-4.2.0-fonts.patch Normal file
View File

@ -0,0 +1,12 @@
diff -up gnuplot-4.4.0/term/gd.trm.pom gnuplot-4.4.0/term/gd.trm
--- gnuplot-4.4.0/term/gd.trm.pom 2010-02-25 03:29:20.000000000 +0100
+++ gnuplot-4.4.0/term/gd.trm 2010-08-17 09:51:22.000000000 +0200
@@ -978,7 +978,7 @@ PNG_options()
if (external_default)
png_state.ttffont = gp_strdup(external_default);
else /* Might as well try some plausible font; it's no worse than failing immediately */
- png_state.ttffont = gp_strdup("arial");
+ png_state.ttffont = gp_strdup("/usr/share/fonts/dejavu/DejaVuSans.ttf");
free(png_state.default_ttffont);
png_state.default_ttffont = gp_strdup(png_state.ttffont);

View File

@ -0,0 +1,17 @@
diff -up gnuplot-4.2.2/src/variable.c.refto gnuplot-4.2.2/src/variable.c
--- gnuplot-4.2.2/src/variable.c.refto 2006-06-27 04:36:30.000000000 +0200
+++ gnuplot-4.2.2/src/variable.c 2007-10-25 14:04:20.000000000 +0200
@@ -263,8 +263,11 @@ static const struct path_table fontpath_
{ "$`kpsexpand '$TEXMFDIST'`/fonts/type1!" },
#endif
/* Linux paths */
- { "/usr/X11R6/lib/X11/fonts/Type1" },
- { "/usr/X11R6/lib/X11/fonts/truetype" },
+ { "/usr/share/fonts/default/ghostscript/" },
+ { "/usr/share/fonts/default/Type1/" },
+ { "/usr/share/fonts/bitstream-vera/" },
+ { "/usr/share/fonts/dejavu-lgc" },
+ { "/usr/share/fonts/liberation" },
/* HP-UX */
{ "/usr/lib/X11/fonts!"},
/* Ghostscript */

View File

@ -0,0 +1,21 @@
diff -upr gnuplot-4.6.0.orig/src/gplt_x11.c gnuplot-4.6.0/src/gplt_x11.c
--- gnuplot-4.6.0.orig/src/gplt_x11.c 2012-07-18 18:55:31.000000000 +0200
+++ gnuplot-4.6.0/src/gplt_x11.c 2012-07-19 12:08:21.177967583 +0200
@@ -4338,7 +4338,7 @@ process_event(XEvent *event)
#endif /* DISABLE_SPACE_RAISES_CONSOLE */
case 'm': /* Toggle mouse display, but only if we control the window here */
- if (((plot != current_plot) && (!modifier_mask))
+ if ((plot && (plot != current_plot) && (!modifier_mask))
#ifdef PIPE_IPC
|| pipe_died
#endif
@@ -4374,7 +4374,7 @@ process_event(XEvent *event)
gp_exec_event(GE_keypress, \
(int)RevX(event->xkey.x), (int)RevY(event->xkey.y), \
gp_keysym, 0, plot->plot_number); \
- } else { \
+ } else if (plot) { \
gp_exec_event(GE_keypress_old, \
(int)RevX(event->xkey.x), (int)RevY(event->xkey.y), \
gp_keysym, 0, plot->plot_number); \

View File

@ -0,0 +1,15 @@
diff -up wrk/src/wxterminal/wxt_gui.h.wrk wrk/src/wxterminal/wxt_gui.h
--- wrk/src/wxterminal/wxt_gui.h.wrk 2014-04-15 17:45:55.184153975 +0200
+++ wrk/src/wxterminal/wxt_gui.h 2014-04-15 17:48:08.151643628 +0200
@@ -155,8 +155,9 @@ extern "C" {
* already has its event loop, we may or may not be multithreaded */
#ifndef WXT_MONOTHREADED
#if defined(__WXGTK__)
-# define WXT_MULTITHREADED
-#elif defined(__WXMSW__) || defined(__WXMAC__)
+//avoid a crash when unlocking a not-locked mutex, do not use threads
+//# define WXT_MULTITHREADED
+//#elif defined(__WXMSW__) || defined(__WXMAC__)
# define WXT_MONOTHREADED
#else
# error "wxt does not know if this platform has to be single- or multi-threaded"

View File

@ -0,0 +1,77 @@
From: caomeng <caomeng5@huawei.com>
Date: Fri, 15 Nov 2019 16:19:37 +0400
Subject: [PATCH] add lib gobject when config
Sometimes, if requires a initialization call to lib gobject, it should
make that call itself rather than expecting the application to to the
initialization.
Signed-off-by: caomeng <caomeng5@huawei.com>
---
configure | 20 +-
1 file changed, 10 insertion(+), 10 deletion(-)
diff --git a/configure b/configure
--- a/configure 2019-11-15 09:49:05.702501694 +0800
+++ a/configure 2019-11-15 09:47:57.641501400 +0800
@@ -13980,12 +13980,12 @@
pkg_cv_CAIROPDF_CFLAGS="$CAIROPDF_CFLAGS"
else
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0\""; } >&5
- ($PKG_CONFIG --exists --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_CAIROPDF_CFLAGS=`$PKG_CONFIG --cflags " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0" 2>/dev/null`
+ pkg_cv_CAIROPDF_CFLAGS=`$PKG_CONFIG --cflags " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -13998,12 +13998,12 @@
pkg_cv_CAIROPDF_LIBS="$CAIROPDF_LIBS"
else
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0\""; } >&5
- ($PKG_CONFIG --exists --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_CAIROPDF_LIBS=`$PKG_CONFIG --libs " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0" 2>/dev/null`
+ pkg_cv_CAIROPDF_LIBS=`$PKG_CONFIG --libs " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -14022,15 +14022,15 @@
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- CAIROPDF_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0"`
+ CAIROPDF_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0"`
else
- CAIROPDF_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0"`
+ CAIROPDF_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0"`
fi
# Put the nasty error message in config.log where it belongs
echo "$CAIROPDF_PKG_ERRORS" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
-Package requirements ( cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0) were not met:
+Package requirements ( cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0) were not met:
$CAIROPDF_PKG_ERRORS
@@ -14042,7 +14042,7 @@
See the pkg-config man page for more details.
" >&5
$as_echo "$as_me: WARNING:
-Package requirements ( cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 glib-2.0) were not met:
+Package requirements ( cairo >= 1.2 cairo-pdf >= 1.2 pango >= 1.10 pangocairo >= 1.10 gobject-2.0 glib-2.0) were not met:
$CAIROPDF_PKG_ERRORS

BIN
gnuplot-5.0.6-clean.tar.gz Normal file

Binary file not shown.

View File

@ -0,0 +1,92 @@
diff -up gnuplot-5.0.6/demo/circles.dem.nolena gnuplot-5.0.6/demo/circles.dem
--- gnuplot-5.0.6/demo/circles.dem.nolena 2017-06-26 12:44:54.497798902 -0400
+++ gnuplot-5.0.6/demo/circles.dem 2017-06-26 12:45:05.006547459 -0400
@@ -98,21 +98,6 @@ pause -1 "Hit return to continue"
reset
set size ratio -1
-set title "Lena's key points"
-unset xtics
-unset ytics
-unset key
-unset border
-set yrange [] reverse
-
-plot 'lena.rgb' binary array=(128,128) dx=4 dy=4 format='%uchar' with rgbimage, \
- 'lena-keypoints.bin' binary format='%double' with circles lc rgb "yellow"
-
-pause -1 "Hit return to continue"
-
-
-reset
-set size ratio -1
set title "Delaunay triangulation of Hemisphere points, some empty circles in red"
unset key
diff -up gnuplot-5.0.6/demo/Makefile.am.nolena gnuplot-5.0.6/demo/Makefile.am
--- gnuplot-5.0.6/demo/Makefile.am.nolena 2017-06-26 12:44:33.146309782 -0400
+++ gnuplot-5.0.6/demo/Makefile.am 2017-06-26 12:44:43.322066306 -0400
@@ -64,7 +64,7 @@ epslatex:
dvips epslatex
##m4-files-begin
-EXTRA_DIST = Makefile.am.in lena-keypoints.bin scatter2.bin sine.bin \
+EXTRA_DIST = Makefile.am.in scatter2.bin sine.bin \
using.bin gnuplot.cfg world.cor 1.dat 2.dat 3.dat arrowstyle.dat \
asciimat.dat battery.dat big_peak.dat candlesticks.dat cities.dat \
clip14in.dat ctg-y2.dat delaunay-edges.dat ellipses.dat empty-circles.dat \
@@ -97,7 +97,7 @@ stringvar.dem surface1.dem surface2.dem
tics.dem timedat.dem transparent.dem transparent_solids.dem using.dem \
utf8.dem varcolor.dem vector.dem world2.dem world.dem demo.edf density.fnc \
hexa.fnc line.fnc reflect.fnc gen-random.inc stat.inc GM1_sugar.pdb \
-bldg.png GM1_bonds.r3d blutux.rgb lena.rgb sound.par sound2.par start.par \
+bldg.png GM1_bonds.r3d blutux.rgb sound.par sound2.par start.par \
gnuplot.rot gnu-valley random-points gpdemos.tcl html
##m4-files-end
diff -up gnuplot-5.0.6/demo/Makefile.in.nolena gnuplot-5.0.6/demo/Makefile.in
--- gnuplot-5.0.6/demo/Makefile.in.nolena 2017-06-26 12:43:56.569184965 -0400
+++ gnuplot-5.0.6/demo/Makefile.in 2017-06-26 12:44:17.562682652 -0400
@@ -331,7 +331,7 @@ SUBDIRS = $(PLUGIN_DIR)
DIST_SUBDIRS = plugin
DEMO = all.dem
GNUPLOT = gnuplot
-EXTRA_DIST = Makefile.am.in lena-keypoints.bin scatter2.bin sine.bin \
+EXTRA_DIST = Makefile.am.in scatter2.bin sine.bin \
using.bin gnuplot.cfg world.cor 1.dat 2.dat 3.dat arrowstyle.dat \
asciimat.dat battery.dat big_peak.dat candlesticks.dat cities.dat \
clip14in.dat ctg-y2.dat delaunay-edges.dat ellipses.dat empty-circles.dat \
@@ -364,7 +364,7 @@ stringvar.dem surface1.dem surface2.dem
tics.dem timedat.dem transparent.dem transparent_solids.dem using.dem \
utf8.dem varcolor.dem vector.dem world2.dem world.dem demo.edf density.fnc \
hexa.fnc line.fnc reflect.fnc gen-random.inc stat.inc GM1_sugar.pdb \
-bldg.png GM1_bonds.r3d blutux.rgb lena.rgb sound.par sound2.par start.par \
+bldg.png GM1_bonds.r3d blutux.rgb sound.par sound2.par start.par \
gnuplot.rot gnu-valley random-points gpdemos.tcl html
@BUILD_PLUGIN_TRUE@PLUGIN_DIR = plugin
diff -up gnuplot-5.0.6/demo/rgbalpha.dem.nolena gnuplot-5.0.6/demo/rgbalpha.dem
--- gnuplot-5.0.6/demo/rgbalpha.dem.nolena 2017-06-26 12:46:06.232082511 -0400
+++ gnuplot-5.0.6/demo/rgbalpha.dem 2017-06-26 12:46:37.431336005 -0400
@@ -18,8 +18,8 @@ set yrange [ 0. : 128. ]
# Alpha = linear gradient on x
plot 100.*(.4+sin(x/5.)/(x/5.)) lw 5 title 'solid line', \
- 'lena.rgb' binary array=(128,128) format="%uchar" flipy using 1:2:3:(2.*column(0)) \
- with rgbalpha title "Lena with linear\nalpha gradient"
+ 'blutux.rgb' binary array=(128,128) format="%uchar" flipy using 1:2:3:(2.*column(0)) \
+ with rgbalpha title "Tux with linear\nalpha gradient"
pause -1 "Hit return to continue"
@@ -28,8 +28,8 @@ pause -1 "Hit return to continue"
focus(x,y) = ((column(0)-x)**2 + (column(-1)-(127-y))**2) > 400 ? 0 : 255
plot 100.*(.4+sin(x/5.)/(x/5.)) lw 5 title 'solid line', \
- 'lena.rgb' binary array=(128,128) format="%uchar" flipy using 1:2:3:(focus(70,50)) \
- with rgbalpha title "Lena with circular mask"
+ 'blutux.rgb' binary array=(128,128) format="%uchar" flipy using 1:2:3:(focus(70,50)) \
+ with rgbalpha title "Tux with circular mask"
pause -1 "Hit return to continue"
reset

164
gnuplot.spec Normal file
View File

@ -0,0 +1,164 @@
%global major_minor 5.0
Name: gnuplot
Summary: a portable command-line driven graphing utility
Version: %{major_minor}.6
Release: 12
License: gnuplot and MIT
URL: http://www.gnuplot.info/
Source0: %{name}-%{version}-clean.tar.gz
Patch0: gnuplot-4.2.0-refers_to.patch
Patch1: gnuplot-4.2.0-fonts.patch
Patch2: gnuplot-4.6.1-plot-sigsegv.patch
Patch3: gnuplot-4.6.4-singlethread.patch
Patch4: gnuplot-5.0.6-no-lena.patch
Patch5: gnuplot-5.0.6-add-lib-gobject-when-config.patch
BuildRequires: cairo-devel latex2html emacs gd-devel giflib-devel libotf libpng-devel
BuildRequires: librsvg2 texinfo libX11-devel libXt-devel lua-devel m17n-lib tex-tex4ht
BuildRequires: tex(ecrm1000.tfm) tex(subfigure.sty) tex(cm-super-t1.enc) tex(pdftex.map)
BuildRequires: zlib-devel libjpeg-turbo-devel pango-devel qt5-linguist tex(latex)
BuildRequires: qt5-qtsvg-devel qt5-qtbase-devel /usr/bin/texi2dvi
Requires: tex-preview dejavu-sans-fonts
Requires: tex(latex) tex(cm-super-t1.enc) tex(ecrm1000.tfm) tex(utf8x.def)
Requires(post): %{_sbindir}/alternatives /sbin/install-info
Requires(preun): %{_sbindir}/alternatives /sbin/install-info
Obsoletes: gnuplot-qt < 5.0.0-4
Obsoletes: %{name}-common = %{version}-%{release}
Provides: %{name}-common = %{version}-%{release}
Obsoletes: %{name}-minimal = %{version}-%{release}
Obsoletes: %{name}-minimal = %{version}-%{release}
Provides: %{name}-latex = %{version}-%{release}
Provides: %{name}-latex = %{version}-%{release}
Obsoletes: emacs-%{name} <= 5.0.0-3
Obsoletes: emacs-%{name}-el <= 5.0.0-3
%description
Gnuplot is a portable command-line driven graphing utility for Linux, OS/2, MS
Windows, OSX, VMS, and many other platforms. The source code is copyrighted but
freely distributed (i.e., you don't have to pay for it). It was originally
created to allow scientists and students to visualize mathematical functions and
data interactively, but has grown to support many non-interactive uses such as
web scripting. It is also used as a plotting engine by third-party applications
like Octave. Gnuplot has been supported and under active development since 1986.
%package_help
%prep
%autosetup -p1
sed -i -e 's:"/usr/lib/X11/app-defaults":"%{_datadir}/X11/app-defaults":' src/gplt_x11.c
iconv -f windows-1252 -t utf-8 ChangeLog > ChangeLog.aux
ln -sf ChangeLog.aux ChangeLog
chmod 644 src/getcolor.h demo/html/webify*
%build
%global configure_opts \\\
--with-readline=builtin \\\
--without-linux-vga \\\
--enable-history-file
mkdir minimal
pushd minimal
cp -a ../configure .
%configure %{configure_opts} \
--disable-wxwidgets \
--without-qt
%make_build
popd
mkdir qt
pushd qt
cp -a ../configure .
%configure %{configure_opts} \
--disable-wxwidgets \
--enable-qt
%make_build
popd
%configure %{configure_opts} \
--with-tutorial
ln -s ../minimal/src/%{name} src/
make -C docs html info
export GNUPLOT_PS_DIR=../../term/PostScript
make -C docs/psdoc ps_symbols.ps ps_fontfile_doc.pdf
make -C tutorial
%install
make -C qt install DESTDIR=%{buildroot} INSTALL='install -p'
cp -a %{buildroot}%{_bindir}/%{name} %{buildroot}%{_bindir}/%{name}-qt
install -p -m 755 minimal/src/%{name} %{buildroot}%{_bindir}/%{name}-minimal
make -C docs install-info DESTDIR=%{buildroot} INSTALL='install -p'
install -d %{buildroot}%{_datadir}/X11/app-defaults
cp -a %{buildroot}%{_datadir}/%{name}/%{major_minor}/app-defaults/Gnuplot %{buildroot}%{_datadir}/X11/app-defaults/Gnuplot
install -d %{buildroot}/%{_mandir}/ja/man1
cp -a %{buildroot}%{_mandir}/man1/%{name}-ja.1 %{buildroot}/%{_mandir}/ja/man1/
touch %{buildroot}%{_bindir}/%{name}
%posttrans
%{_sbindir}/alternatives --install %{_bindir}/%{name} %{name} %{_bindir}/%{name}-qt 61
%{_sbindir}/alternatives --install %{_bindir}/%{name} %{name} %{_bindir}/%{name}-minimal 40
%post
if [ -f %{_infodir}/%{name}.info* ]; then
/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || :
fi
[ -e %{_bindir}/texhash ] && %{_bindir}/texhash 2> /dev/null;
%preun
if [ $1 = 0 ]; then
%{_sbindir}/alternatives --remove %{name} %{_bindir}/%{name}-qt || :
%{_sbindir}/alternatives --remove %{name} %{_bindir}/%{name}-minimal || :
if [ -f %{_infodir}/%{name}.info* ]; then
/sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || :
fi
fi
%files
%ghost %attr(0755,-,-) %{_bindir}/%{name}
%{_bindir}/%{name}-qt
%{_libexecdir}/%{name}/%{major_minor}/%{name}_qt
%{_datadir}/%{name}/%{major_minor}/qt/
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/%{major_minor}
%dir %{_datadir}/%{name}/%{major_minor}/PostScript
%{_datadir}/%{name}/%{major_minor}/PostScript/*.ps
%{_datadir}/%{name}/%{major_minor}/PostScript/aglfn.txt
%dir %{_datadir}/%{name}/%{major_minor}/js
%{_datadir}/%{name}/%{major_minor}/js/*
%dir %{_datadir}/%{name}/%{major_minor}/lua/
%{_datadir}/%{name}/%{major_minor}/lua/%{name}-tikz.lua
%{_datadir}/%{name}/%{major_minor}/colors_*
%{_datadir}/%{name}/%{major_minor}/%{name}.gih
%{_datadir}/%{name}/%{major_minor}/%{name}rc
%dir %{_libexecdir}/%{name}
%dir %{_libexecdir}/%{name}/%{major_minor}
%{_libexecdir}/%{name}/%{major_minor}/%{name}_x11
%{_datadir}/X11/app-defaults/Gnuplot
%{_infodir}/%{name}.info.gz
%{_bindir}/%{name}-minimal
%{_datadir}/texmf/tex/latex/%{name}/
%exclude %{_infodir}/dir
%exclude %{_datadir}/%{name}/%{major_minor}/app-defaults/Gnuplot
%files help
%doc BUGS Copyright ChangeLog README NEWS
%{_mandir}/man1/%{name}.1.gz
%{_mandir}/ja/man1/%{name}-ja.1.gz
%doc docs/psdoc/ps_guide.ps
%doc docs/psdoc/ps_symbols.ps
%doc tutorial/tutorial.dvi
%doc docs/psdoc/ps_file.doc demo
%doc docs/psdoc/ps_fontfile_doc.pdf
%doc docs/htmldocs tutorial/eg7.eps
%exclude %{_mandir}/man1/%{name}-ja.1*
%changelog
* Mon Feb 17 2020 Tianfei <tianfei16@huawei.com> - 5.0.6-12
- Package init