Accepting request 231963 from Publishing

Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/231963
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lyx?expand=0&rev=67
This commit is contained in:
Stephan Kulow 2014-05-02 12:00:22 +00:00 committed by Git OBS Bridge
commit 0d99a46cd1
9 changed files with 98 additions and 171 deletions

View File

@ -1,80 +0,0 @@
From 254c5fa439df319e8c71212f946ba74a104be16e Mon Sep 17 00:00:00 2001
From: Guy Rutenberg <guyrutenberg@gmail.com>
Date: Sat, 6 Jul 2013 16:09:50 +0300
Subject: [PATCH] Prevent zobmie process.
Using Systemcall::startscript() with Starttype::DontWait used to create
zombie process, as nobody would collect them. This patch start those
process as detached, hence preventing them from becoming zombies.
---
src/support/Systemcall.cpp | 26 ++++++++++++++++----------
src/support/SystemcallPrivate.h | 2 +-
2 files changed, 17 insertions(+), 11 deletions(-)
diff --git a/src/support/Systemcall.cpp b/src/support/Systemcall.cpp
index ca80409..f689c0b 100644
--- a/src/support/Systemcall.cpp
+++ b/src/support/Systemcall.cpp
@@ -251,19 +251,17 @@ int Systemcall::startscript(Starttype how, string const & what,
SystemcallPrivate d(outfile, errfile);
- d.startProcess(cmd, path);
- if (!d.waitWhile(SystemcallPrivate::Starting, process_events, -1)) {
+ d.startProcess(cmd, path, how == DontWait);
+ if (how == DontWait && d.state == SystemcallPrivate::Running) {
+ return 0;
+ }
+ if (d.state == SystemcallPrivate::Error
+ || !d.waitWhile(SystemcallPrivate::Starting, process_events, -1)) {
LYXERR0("Systemcall: '" << cmd << "' did not start!");
LYXERR0("error " << d.errorMessage());
return 10;
}
- if (how == DontWait) {
- QProcess* released = d.releaseProcess();
- (void) released; // TODO who deletes it?
- return 0;
- }
-
if (!d.waitWhile(SystemcallPrivate::Running, process_events,
os::timeout_min() * 60 * 1000)) {
LYXERR0("Systemcall: '" << cmd << "' did not finish!");
@@ -349,10 +347,18 @@ SystemcallPrivate::SystemcallPrivate(std::string const & sf,
}
-void SystemcallPrivate::startProcess(QString const & cmd, string const & path)
+void SystemcallPrivate::startProcess(QString const & cmd, string const & path, bool detached)
{
cmd_ = cmd;
- if (process_) {
+ if (detached) {
+ state = SystemcallPrivate::Running;
+ if (!QProcess::startDetached(toqstr(latexEnvCmdPrefix(path)) + cmd_)) {
+ state = SystemcallPrivate::Error;
+ return;
+ }
+ QProcess* released = releaseProcess();
+ delete released;
+ } else if (process_) {
state = SystemcallPrivate::Starting;
process_->start(toqstr(latexEnvCmdPrefix(path)) + cmd_);
}
diff --git a/src/support/SystemcallPrivate.h b/src/support/SystemcallPrivate.h
index b8dc17a..6534d07 100644
--- a/src/support/SystemcallPrivate.h
+++ b/src/support/SystemcallPrivate.h
@@ -45,7 +45,7 @@ public:
State state;
bool waitWhile(State, bool processEvents, int timeout = -1);
- void startProcess(QString const & cmd, std::string const & path);
+ void startProcess(QString const & cmd, std::string const & path, bool detach);
int exitCode();
--
1.7.9.5

View File

@ -1,51 +0,0 @@
--- lib/configure.py.orig 2011-08-15 11:05:05.000000000 +0200
+++ lib/configure.py 2011-08-15 13:29:56.691000026 +0200
@@ -503,7 +503,7 @@
checkViewerEditor('a SVG viewer and editor', ['inkscape'],
rc_entry = [r'\Format svg svg SVG "" "%%" "%%" "vector"'])
#
- path, iv = checkViewerNoRC('a raster image viewer', ['xv', 'kview', 'gimp-remote', 'gimp'],
+ path, iv = checkViewerNoRC('a raster image viewer', ['xdg-open', 'xv', 'kview', 'gimp-remote', 'gimp'],
rc_entry = [r'''\Format bmp bmp BMP "" "%s" "%s" ""
\Format gif gif GIF "" "%s" "%s" ""
\Format jpg jpg JPEG "" "%s" "%s" ""
@@ -566,7 +566,7 @@
\Format excel xls "Excel spreadsheet" "" "" "%%" "document"
\Format oocalc ods "OpenOffice spreadsheet" "" "" "%%" "document"'''])
#
- path, xhtmlview = checkViewer('an HTML previewer', ['firefox', 'mozilla file://$$p$$i', 'netscape'],
+ path, xhtmlview = checkViewer('an HTML previewer', ['xdg-open', 'firefox', 'mozilla file://$$p$$i', 'netscape'],
rc_entry = [r'\Format xhtml xhtml "LyXHTML" y "%%" "" "document,menu=export"'])
if xhtmlview == "":
addToRC(r'\Format xhtml xhtml "LyXHTML" y "" "" "document,menu=export"')
@@ -580,11 +580,11 @@
#
#checkProg('a Postscript interpreter', ['gs'],
# rc_entry = [ r'\ps_command "%%"' ])
- checkViewer('a Postscript previewer', ['kghostview', 'okular', 'evince', 'gv', 'ghostview -swap'],
+ checkViewer('a Postscript previewer', ['xdg-open', 'kghostview', 'okular', 'evince', 'gv', 'ghostview -swap'],
rc_entry = [r'''\Format eps eps EPS "" "%%" "" "vector"
\Format ps ps Postscript t "%%" "" "document,vector,menu=export"'''])
# for xdg-open issues look here: http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg151818.html
- checkViewer('a PDF previewer', ['pdfview', 'kpdf', 'okular', 'evince', 'kghostview', 'xpdf', 'acrobat', 'acroread', \
+ checkViewer('a PDF previewer', ['xdg-open', 'pdfview', 'kpdf', 'okular', 'evince', 'kghostview', 'xpdf', 'acrobat', 'acroread', \
'gv', 'ghostview'],
rc_entry = [r'''\Format pdf pdf "PDF (ps2pdf)" P "%%" "" "document,vector,menu=export"
\Format pdf2 pdf "PDF (pdflatex)" F "%%" "" "document,vector,menu=export"
@@ -592,14 +592,14 @@
\Format pdf4 pdf "PDF (XeTeX)" X "%%" "" "document,vector,menu=export"
\Format pdf5 pdf "PDF (LuaTeX)" u "%%" "" "document,vector,menu=export"'''])
#
- checkViewer('a DVI previewer', ['xdvi', 'kdvi', 'okular', 'yap', 'dviout -Set=!m'],
+ checkViewer('a DVI previewer', ['xdg-open', 'xdvi', 'kdvi', 'okular', 'yap', 'dviout -Set=!m'],
rc_entry = [r'''\Format dvi dvi DVI D "%%" "" "document,vector,menu=export"
\Format dvi3 dvi "DVI (LuaTeX)" V "%%" "" "document,vector,menu=export"'''])
if dtl_tools:
# Windows only: DraftDVI
addToRC(r'\Format dvi2 dvi DraftDVI "" "" "" "vector"')
#
- checkViewer('an HTML previewer', ['firefox', 'mozilla file://$$p$$i', 'netscape'],
+ checkViewer('an HTML previewer', ['xdg-open', 'firefox', 'mozilla file://$$p$$i', 'netscape'],
rc_entry = [r'\Format html html HTML H "%%" "" "document,menu=export"'])
#
checkViewerEditor('Noteedit', ['noteedit'],

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0597bda734d476f59dd440c45a801e1c581ab30bf4c9ab23242b3a452beee862
size 10449908

55
lyx-2.1.0-xdg_open.patch Normal file
View File

@ -0,0 +1,55 @@
diff -ur lyx-2.1.0.orig/lib/configure.py lyx-2.1.0/lib/configure.py
--- lyx-2.1.0.orig/lib/configure.py 2014-04-13 19:23:17.000000000 +0200
+++ lyx-2.1.0/lib/configure.py 2014-04-14 22:48:03.871041731 +0200
@@ -594,7 +594,7 @@
\Format tiff tif TIFF "" "%s" "%s" "" "image/tiff"
\Format xbm xbm XBM "" "%s" "%s" "" "image/x-xbitmap"
\Format xpm xpm XPM "" "%s" "%s" "" "image/x-xpixmap"'''
- path, iv = checkViewerNoRC('a raster image viewer', ['xv', 'kview', 'gimp-remote', 'gimp'], rc_entry = [imageformats])
+ path, iv = checkViewerNoRC('a raster image viewer', ['xdg-open', 'xv', 'kview', 'gimp-remote', 'gimp'], rc_entry = [imageformats])
path, ie = checkEditorNoRC('a raster image editor', ['gimp-remote', 'gimp'], rc_entry = [imageformats])
addToRC(imageformats % \
(iv, ie, iv, ie, iv, ie, iv, ie, iv, ie, iv, ie, iv, ie, iv, ie, iv, ie, iv, ie) )
@@ -633,7 +633,7 @@
\Format excel xls "Excel spreadsheet" "" "" "%%" "document" "application/vnd.ms-excel"
\Format oocalc ods "OpenOffice spreadsheet" "" "" "%%" "document" "application/vnd.oasis.opendocument.spreadsheet"'''])
#
- checkViewer('an HTML previewer', ['firefox', 'mozilla file://$$p$$i', 'netscape'],
+ checkViewer('an HTML previewer', ['xdg-open', 'firefox', 'mozilla file://$$p$$i', 'netscape'],
rc_entry = [r'\Format xhtml xhtml "LyXHTML" y "%%" "" "document,menu=export" "application/xhtml+xml"'])
#
checkEditor('a BibTeX editor', ['jabref', 'JabRef', \
@@ -646,14 +646,14 @@
#
#checkProg('a Postscript interpreter', ['gs'],
# rc_entry = [ r'\ps_command "%%"' ])
- checkViewer('a Postscript previewer', ['kghostview', 'okular', 'evince', 'gv', 'ghostview -swap'],
+ checkViewer('a Postscript previewer', ['xdg-open', 'kghostview', 'okular', 'evince', 'gv', 'ghostview -swap'],
rc_entry = [r'''\Format eps eps EPS "" "%%" "" "vector" "image/x-eps"
\Format eps2 eps "EPS (uncropped)" "" "%%" "" "vector" ""
\Format eps3 eps "EPS (cropped)" "" "%%" "" "document,menu=export" ""
\Format ps ps Postscript t "%%" "" "document,vector,menu=export" "application/postscript"'''])
# for xdg-open issues look here: http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg151818.html
# the MIME type is set for pdf6, because that one needs to be autodetectable by libmime
- checkViewer('a PDF previewer', ['pdfview', 'kpdf', 'okular', 'evince', 'kghostview', 'xpdf', 'acrobat', 'acroread', 'mupdf', \
+ checkViewer('a PDF previewer', ['xdg-open', 'pdfview', 'kpdf', 'okular', 'evince', 'kghostview', 'xpdf', 'acrobat', 'acroread', 'mupdf', \
'gv', 'ghostview'],
rc_entry = [r'''\Format pdf pdf "PDF (ps2pdf)" P "%%" "" "document,vector,menu=export" ""
\Format pdf2 pdf "PDF (pdflatex)" F "%%" "" "document,vector,menu=export" ""
@@ -663,14 +663,14 @@
\Format pdf6 pdf "PDF (graphics)" "" "%%" "" "vector" "application/pdf"
\Format pdf7 pdf "PDF (cropped)" "" "%%" "" "document,menu=export" ""'''])
#
- checkViewer('a DVI previewer', ['xdvi', 'kdvi', 'okular', 'yap', 'dviout -Set=!m'],
+ checkViewer('a DVI previewer', ['xdg-open', 'xdvi', 'kdvi', 'okular', 'yap', 'dviout -Set=!m'],
rc_entry = [r'''\Format dvi dvi DVI D "%%" "" "document,vector,menu=export" "application/x-dvi"
\Format dvi3 dvi "DVI (LuaTeX)" V "%%" "" "document,vector,menu=export" ""'''])
if dtl_tools:
# Windows only: DraftDVI
addToRC(r'\Format dvi2 dvi DraftDVI "" "" "" "vector" ""')
#
- checkViewer('an HTML previewer', ['firefox', 'mozilla file://$$p$$i', 'netscape'],
+ checkViewer('an HTML previewer', ['xdg-open', 'firefox', 'mozilla file://$$p$$i', 'netscape'],
rc_entry = [r'\Format html "html, htm" HTML H "%%" "" "document,menu=export" "text/html"'])
#
checkViewerEditor('Noteedit', ['noteedit'],

3
lyx-2.1.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f1c9a4f2387e38efee43c0684b4f6fc0972f68d6cb2ad06a1b30c58a81f22d48
size 10600316

View File

@ -1,3 +1,30 @@
-------------------------------------------------------------------
Mon Apr 21 23:21:55 UTC 2014 - cornelis@solcon.nl
- Correct source url
-------------------------------------------------------------------
Mon Apr 14 22:03:59 UTC 2014 - cornelis@solcon.nl
- Update to version 2.1.0. New features:
* Native IPA inset and IPA toolbar
* More supported languages with XeTeX
* New interface for LaTeX-fonts
* Basic support for Math OpenType fonts
* Document classes organized in categories
* Enhanced support for LaTeX options
* More supported LaTeX commands
* Table enhancements
* Layout enhancements
* New modules
* Support to output cropped PDF or EPS
* New command-line option
* New preferences settings
* For details see: http://wiki.lyx.org/LyX/NewInLyX21
- Added bc to BuildRequires
- Removed desktop file and app icon: now part of lyx itself
- Updated xdg-open patch
-------------------------------------------------------------------
Thu Jan 23 00:13:24 UTC 2014 - cornelis@solcon.nl

View File

@ -1,15 +0,0 @@
[Desktop Entry]
Version=1.0
Type=Application
Name=LyX
GenericName=Document Processor
Comment=High level LaTeX frontend
Exec=lyx %F
TryExec=lyx
Icon=lyx
StartupNotify=false
StartupWMClass=Lyx
Terminal=false
Categories=Office;WordProcessor;Qt;
MimeType=text/x-lyx;application/x-lyx;

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f8a3a5dd27edaa02ab29281cfde31cef23c0362204c3ed60154841deb91b3705
size 2015

View File

@ -18,6 +18,7 @@
Name: lyx
#!BuildIgnore: lyx
BuildRequires: bc
BuildRequires: boost-devel
BuildRequires: enchant-devel
BuildRequires: fdupes
@ -26,21 +27,17 @@ BuildRequires: libqt4-devel
BuildRequires: python
BuildRequires: update-desktop-files
BuildRequires: xz
Version: 2.0.7
Version: 2.1.0
Release: 0
Summary: WYSIWYM (What You See Is What You Mean) document processor
License: GPL-2.0+
Group: Productivity/Publishing/TeX/Frontends
Url: http://www.lyx.org/
Source: ftp://ftp.lyx.org/pub/lyx/stable/2.0.x/lyx-%{version}.tar.xz
Source1: lyx.desktop
Source2: lyx.png
Source3: lyxrc.dist
Source: ftp://ftp.lyx.org/pub/lyx/stable/2.1.x/lyx-%{version}.tar.xz
Source1: lyxrc.dist
# xdg patch
# This was rejected by upstream (http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg133878.html)
Patch0: lyx-2.0.6-xdg_open.patch
# PATCH-FIX-UPSTREAM fix for http://www.lyx.org/trac/ticket/8774 (fixed in 2.1)
Patch1: lyx-2.0.6-fix_zombies.patch
Patch0: lyx-2.1.0-xdg_open.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: ImageMagick
%if 0%{?suse_version} < 1230
@ -104,8 +101,7 @@ document under "Help" on the menubar.
%prep
%setup -q
%patch0
%patch1 -p1
%patch0 -p1
# Remove build time references so build-compare can do its work
FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%H:%%M')
FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y')
@ -130,12 +126,7 @@ TEXMF=%{_datadir}/texmf
make install DESTDIR=$RPM_BUILD_ROOT TEXMF=$TEXMF
# some defaults
install -p -m644 -D %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/lyx/lyxrc.dist
# Add executable to files with shebang as advised by rpmlint
chmod +x $RPM_BUILD_ROOT%{_datadir}/lyx/scripts/*.py
chmod +x $RPM_BUILD_ROOT%{_datadir}/lyx/scripts/listerrors
chmod +x $RPM_BUILD_ROOT%{_datadir}/lyx/lyx2lyx/profiling.py
install -p -m644 -D %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/lyx/lyxrc.dist
mkdir -p $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}
pushd $RPM_BUILD_ROOT%{_datadir}/lyx/doc/
@ -145,12 +136,12 @@ pushd $RPM_BUILD_ROOT%{_datadir}/lyx/doc/
$RPM_BUILD_ROOT/%{_defaultdocdir}/%{name}/
done
popd
cp ABOUT-NLS ANNOUNCE COPYING NEWS \
cp ANNOUNCE COPYING NEWS \
README README.localization RELEASE-NOTES UPGRADING \
$RPM_BUILD_ROOT/%{_defaultdocdir}/%{name}/
mkdir -p $RPM_BUILD_ROOT$TEXMF/tex/latex
ln -s %{_datadir}/lyx/tex $RPM_BUILD_ROOT$TEXMF/tex/latex/lyx
%suse_update_desktop_file -i lyx Office WordProcessor
%suse_update_desktop_file lyx Office WordProcessor
%fdupes -s $RPM_BUILD_ROOT
%find_lang %name
@ -162,7 +153,10 @@ ln -s %{_datadir}/lyx/tex $RPM_BUILD_ROOT$TEXMF/tex/latex/lyx
/usr/bin/lyxclient
/usr/bin/tex2lyx
%{_datadir}/applications/lyx.desktop
%{_datadir}/pixmaps/lyx.png
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/*
%dir %{_datadir}/icons/hicolor/*/apps
%{_datadir}/icons/hicolor/*/apps/%{name}.*
%dir %{_datadir}/texmf
%dir %{_datadir}/texmf/tex
%dir %{_datadir}/texmf/tex/latex