LyX is a document processor that encourages an approach to writing
based on the structure of your documents (WYSIWYM) and not simply
their appearance (WYSIWYG).
LyX combines the power and flexibility of TeX/LaTeX with the ease
of use of a graphical interface. This results in world-class support
for creation of mathematical content (via a fully integrated equation
editor) and structured documents like academic articles, theses,
and books. In addition, staples of scientific authoring such as
reference list and index creation come standard. But you can also
use LyX to create a letter or a novel or a theatre play or film
script. A broad array of ready, well-designed document layouts are
built in.
LyX is for people who want their writing to look great, right out
of the box. No more endless tinkering with formatting details,
"finger painting" font attributes or futzing around with page
boundaries. You just write. On screen, LyX looks like any word
processor; its printed output - or richly cross-referenced PDF,
just as readily produced - looks like nothing else.
===> The following configuration options are available for lyx-2.5.1_1:
ASPELL=off: Spell checking support via GNU Aspell
ENCHANT=off: Spell checking using Enchant
HUNSPELL=on: Spell checking support via Hunspell
NLS=on: Native Language Support
===> Use 'make config' to modify these settings
For LyX to work you need to install some kind of TeX distribution. See the
print/texlive-* ports in the ports tree.
If upgrading from < 2:
As of version 2.0.0, LyX depends on the textproc/mythes ports for
thesaurus support. Even though the LyX port depends on textproc/mythes,
it is up to the user to install the thesaurus ports for her languages
of preference.
python.mk: rename PYTHON_EXT_SUFFIX to PYTHON_TAG, document, etc
EXT_SUFFIX, according to PEP 3149, refers to the full tag and
extension for compiled extension module objects, eg .cpython-311.so,
.cpython-313t.so, etc. We do not use the correct semantic meaning,
and this usage becomes ambiguous and confusing when tags do not
match between bytecode and compiled extension module objects.
Rename our PYTHON_EXT_SUFFIX to PYTHON_TAG to align with PEP 3147's
specification of a magic tag, which consists of implementation name
and shorthand version only. This is meant for bytecode and other
files containing this tag in their filename that do not depend on
a specific Python ABI for the same version. Chase all existing
consumers.
(Only the first 15 lines of the commit message are shown above )
python: bump all USE_PYTHON=distutils consumers after RUN_DEPENDS removal
Any missed ports, feel free to bump.
Any ports that need setuptools at runtime can have the devel/py-setuptools
manually added back to RUN_DEPENDS, but understand that this practice
is deprecated; see CHANGES for details.
Mk/Uses: always use colon for build/run suffix
Most USES use a colon for build/run(/test) suffixes. Change kde.mk,
qt.mk and pyqt.mk to do the same, and update all ports using that.
Document in CHANGES.
PR: 266034
Exp-run by: antoine
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D36349
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
print: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alan Eldridge <alane@geeksrus.net>
* Alex Dupre <ale@FreeBSD.org>
* Alex Dupre <sysadmin@alexdupre.com>
* Alexander Vereeken <Alexander88207@protonmail.com>
* Alexey Dokuchaev <danfe@FreeBSD.org>
* Alonso Cardenas Marquez <acm@FreeBSD.org>
* Andreas Klemm <andreas@FreeBSD.org>
* Andreas Klemm <andreas@klemm.gtn.com>
* Andrew Pantyukhin <infofarmer@FreeBSD.org>
* Anish Mistry <amistry@am-productions.biz>
(Only the first 15 lines of the commit message are shown above )
Update to 2.3.3.
Also exclude 3rdparty/ and a few other directories when extracting the
tarball. This saves some disk space and prevents any bundled
dependencies from accidentally sneaking in.
Based on a patch submitted by mi@.
PR: 240197
Submitted by: mi
Add USES=xorg USES=gl, ports categories p
Add USES=xorg and USES=gl to ports in categories starting with 'p'
While here, try to sprinkle other USES (mostly gnome and sdl) as needed.
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
print/lyx: Correct the python executable location in .py, .cpp, .lyx files; Add
missing USExx clauses
lyx was broken without being able to call the python executable.
PR: 236619
Approved by: rakuco
MFH: 2019Q1
Fix Qt5 symbol version scripts to put the catch-all clause first. When
a symbol matches multiple clauses the last one takes precedence. If the
catch-all is last it captures everything. In the case of Qt5 libraries
this caused all symbols to have a Qt_5 label while some should have
Qt_5_PRIVATE_API. This only affects lld because GNU ld always gives the
catch-all lowest priority.
Older versions of Qt5Webengine exported some memory allocation symbols from
the bundled Chromium. Version 5.9 stopped exporting these [1] but the
symbols were kept as weak wrappers for the standard allocation functions to
maintain binary compatibility. [2][3] The problem is that the call to the
standard function in these weak wrappers is only resolved to the standard
function if there's a call to this standard function in other parts of
Qt5Webengine, because only then is there a non-weak symbol that takes
precedence over the weak one. If there's no such non-weak symbol the call
(Only the first 15 lines of the commit message are shown above )
Add USES=compiler:c++11-lang for GCC builds to work
This fixes the build on architectures where GCC is the default compiler.
PR: 234340
Submitted by: Piotr Kubaj <pkubaj@anongoth.pl>
Followup on r483807.
jbeich commented on some ports in D17724 but I forgot to add them to the list.
Submitted by: rene
Reviewed by: bapt, jbeich
Differential Revision: https://reviews.freebsd.org/D17724
print/lyx: unbreak with boost 1.69
FileName.cpp:77:32: error: too few template arguments for class template
'crc_table_t'
template struct boost::detail::crc_table_t<32, 0x04C11DB7, true>;
^
/usr/local/include/boost/crc.hpp:1009:11: note: template is declared here
class crc_table_t
^
PR: 232525
Suggested by: upstream
Replace bsd.qt.mk by Uses/qt.mk and Uses/qt-dist.mk
From now on, ports that depend on Qt4 will have to set
USES= qt:4
USE_QT= foo bar
ports depending on Qt5 will use
USES= qt:5
USE_QT= foo bar
PR: 229225
Exp-run by: antoine
Reviewed by: mat
Approved by: portmgr (antoine)
Differential Revision: -https://reviews.freebsd.org/D15540
Add a patch to fix the build on FreeBSD 10.4.
pkg-fallout reports the following error:
TexRow.cpp:271:6: error: return type 'const TexRow::TextEntry' must match
previous return type 'TexRow::TextEntry' when lambda expression has unspecified
explicit return type
return text_none;
^
TexRow.cpp:273:3: error: return type 'const TexRow::TextEntry' must match
previous return type 'TexRow::TextEntry' when lambda expression has unspecified
explicit return type
return text_none;
^
TexRow.cpp:288:6: error: return type 'lyx::TexRow::TextEntry' must match
previous return type 'const TexRow::TextEntry' when lambda expression has
unspecified explicit return type
return last_pos;
^
TexRow.cpp:290:6: error: return type 'struct TextEntry' must match previous
return type 'const TexRow::TextEntry' when lambda expression has unspecified
explicit return type
return entry.text;
^
TexRow.cpp:293:3: error: return type 'lyx::TexRow::TextEntry' must match
previous return type 'const TexRow::TextEntry' when lambda expression has
unspecified explicit return type
return last_pos;
^
Make the lambda return type explicit to work around what looks like a bug on an
old clang version.
Not bumping PORTREVISION, as this shouldn't change the code in FreeBSD versions
with a more recent clang.
Update to 2.2.2.
Release notes: http://www.lyx.org/announce/2_2_2.txt
Switch the build to Qt5 now that we have Qt 5.6 in the tree. While here,
stop mentioning the long-defunct print/teTeX port in pkg-message.
Add patch to fix the build on FreeBSD 10.1.
LyX 2.2.0 had some code changes and is using std::bind() when C++11 support is
available. The libc++ version on 10.0 and 10.1 does not work as expected, so
force boost::bind() on those systems to avoid the following error:
frontends/qt4/liblyxqt4.a(GuiWorkArea.o): In function
`_ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE':
GuiWorkArea.cpp:(.text._ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE[_ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE]+0xa):
undefined reference to
`_ZNSt3__18__invokeIRMN3lyx8frontend11GuiWorkAreaEFvvERPS3_JEvEEDTcldsdeclsr3std3__1E7forwardIT0_Efp0_Efp_spclsr3std3__1E7forwardIT1_Efp1_EEEOT_OS9_DpOSA_'
/usr/bin/ld: lyx: hidden symbol
`_ZNSt3__18__invokeIRMN3lyx8frontend11GuiWorkAreaEFvvERPS3_JEvEEDTcldsdeclsr3std3__1E7forwardIT0_Efp0_Efp_spclsr3std3__1E7forwardIT1_Efp1_EEEOT_OS9_DpOSA_'
isn't defined
/usr/bin/ld: final link failed: Nonrepresentable section on output
Update to 2.2.0.
Changes and release notes:
http://wiki.lyx.org/LyX/NewInLyX22
The GUI still uses Qt4, as 2.2.0's release notes only advise using the Qt5
versions with Qt >= 5.6.0.
Fix the build with libc++, and a lot more.
- Support staging.
- Remove outdated pthread-related variables in Makefile.
- Sort plist.
- Sort the USES lines.
- Switch away from the deprecated USE_GNOME=desktopfileutils.
- Use the new library format for libraries in LIB_DEPENDS.
- Use the new syntax for configuration options.
Introduce ICONV_CONFIGURE_ARG variable defined at Uses/iconv.mk.
It's value is "--with-libiconv-prefix=/usr/local" for systems
before 100043 with ports libiconv and to use at systems post
100043 with base iconv it's value is "" (NULL).
Co-authors: bapt, madpilot and bsam (me)
- Update to 2.0.5.
- Convert to OptionsNG.
- Install the .desktop file and PNG icon into ${PREFIX} instead of
${LOCALBASE}. This should make no difference to everyone else, but makes
using `port test' easier with the port.