Projects
Eulaceura:Factory
mandoc
_service:obs_scm:mandoc.spec
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:obs_scm:mandoc.spec of Package mandoc
Name: mandoc Version: 1.14.6 Release: 5 Summary: A suite of tools for compiling mdoc and man License: ISC URL: https://mandoc.bsd.lv/ Source0: https://mandoc.bsd.lv/snapshots/mandoc-%{version}.tar.gz Patch0: 0001-add-compile-option.patch BuildRequires: gcc BuildRequires: make BuildRequires: clang BuildRequires: zlib-devel # requirements for %%check BuildRequires: perl-interpreter BuildRequires: perl(IPC::Open3) Requires(post): %{_sbindir}/update-alternatives Requires(postun): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives # The shared library package has been removed per discussion with the # upstream maintainer. If using the library, the static library is # preferred because the API is not stable. Provides: libmandoc = %{version}-%{release} Obsoletes: libmandoc <= 1.14.5-10 %description mandoc is a suite of tools compiling mdoc, the roff macro language of choice for BSD manual pages, and man, the predominant historical language for UNIX manuals. It is small, ISO C, ISC-licensed, and quite fast. The main component of the toolset is the mandoc utility program, based on the libmandoc validating compiler, to format output for UTF-8 and ASCII UNIX terminals, HTML 5, PostScript, and PDF. %package -n libmandoc-devel Summary: Development libraries and headers for libmandoc %description -n libmandoc-devel The mandoc library parses a UNIX manual into an abstract syntax tree (AST). UNIX manuals are composed of mdoc(7) or man(7), and may be mixed with roff(7), tbl(7), and eqn(7) invocations. %prep %autosetup -p1 %build # NB: not an autoconf script # settings are read in through configure.local echo 'PREFIX=%{_prefix}' > configure.local echo 'BINDIR=%{_bindir}' >> configure.local echo 'SBINDIR=%{_sbindir}' >> configure.local echo 'MANDIR=%{_mandir}' >> configure.local echo 'INCLUDEDIR=%{_includedir}' >> configure.local echo 'LIBDIR=%{_libdir}' >> configure.local # with default settings rpmlint complains about cross-directory hardlinks echo 'LN="ln -sf"' >> configure.local echo 'MANM_MANCONF=mandoc.conf' >> configure.local # override the install permissions so that owner-write bits are set, # so rpmbuild can do whatever modifications it does post-%%install echo 'INSTALL_PROGRAM="${INSTALL} -m 0755"' >> configure.local echo 'INSTALL_LIB="${INSTALL} -m 0755"' >> configure.local echo 'INSTALL_MAN="${INSTALL} -m 0644"' >> configure.local echo 'INSTALL_DATA="${INSTALL} -m 0644"' >> configure.local echo 'INSTALL_LIBMANDOC=1' >> configure.local %ifarch riscv64 echo 'CFLAGS="%{optflags} -fPIC -Werror=implicit-function-declaration"' >> configure.local %else echo 'CFLAGS="%{optflags} -fPIC"' >> configure.local %endif export CC=clang ./configure %make_build %install %make_install # Ensure headers do not have the execute bit set chmod -x %{buildroot}%{_includedir}/*.h # rename files for alternative usage for f in man apropos whatis soelim; do # Rename binary executables mv %{buildroot}%{_bindir}/$f %{buildroot}%{_bindir}/$f.%{name} # Rename corresponding man pages mv %{buildroot}%{_mandir}/man1/$f.1 %{buildroot}%{_mandir}/man1/$f.%{name}.1 done %check env LD_LIBRARY_PATH="$PWD" %make_build regress %pre for f in man apropos whatis; do [ -L %{_bindir}/$f ] || %{__rm} -f %{_bindir}/$f >/dev/null 2>&1 || : [ -L %{_mandir}/man1/$f.1.gz ] || %{__rm} -f %{_mandir}/man1/$f.1.gz >/dev/null 2>&1 || : done if [ -e /usr/lib/systemd/system/mandb.timer ]; then if test -d /run/systemd; then systemctl stop man-db.timer >/dev/null 2>&1 || : systemctl -q disable man-db.timer >/dev/null 2>&1 || : fi fi %preun if [ $1 -eq 0 ]; then %{_sbindir}/update-alternatives --remove man %{_bindir}/man.%{name} >/dev/null 2>&1 || : fi %post # set up the alternatives files %{_sbindir}/update-alternatives --install %{_bindir}/man man %{_bindir}/man.%{name} 300 \ --slave %{_bindir}/apropos apropos %{_bindir}/apropos.%{name} \ --slave %{_bindir}/whatis whatis %{_bindir}/whatis.%{name} \ --slave %{_mandir}/man1/man.1.gz man.1.gz %{_mandir}/man1/man.%{name}.1.gz \ --slave %{_mandir}/man1/apropos.1.gz apropos.1.gz %{_mandir}/man1/apropos.%{name}.1.gz \ --slave %{_mandir}/man1/whatis.1.gz whatis.1.gz %{_mandir}/man1/whatis.%{name}.1.gz \ --slave %{_mandir}/man1/soelim.1.gz soelim.1.gz %{_mandir}/man1/soelim.%{name}.1.gz \ >/dev/null 2>&1 || : %files %license LICENSE %{_bindir}/demandoc %{_bindir}/mandoc %ghost %{_bindir}/apropos %{_bindir}/apropos.%{name} %ghost %{_bindir}/man %{_bindir}/man.%{name} %ghost %{_bindir}/soelim %{_bindir}/soelim.%{name} %ghost %{_bindir}/whatis %{_bindir}/whatis.%{name} %{_sbindir}/makewhatis %{_mandir}/man1/demandoc.1.gz %{_mandir}/man1/mandoc.1.gz %ghost %{_mandir}/man1/soelim.1* %{_mandir}/man1/soelim.%{name}.* %ghost %{_mandir}/man1/man.1* %ghost %{_mandir}/man1/apropos.1* %ghost %{_mandir}/man1/whatis.1* %{_mandir}/man1/man.%{name}.1* %{_mandir}/man1/apropos.%{name}.1* %{_mandir}/man1/whatis.%{name}.1* %{_mandir}/man5/mandoc.conf.5.gz %{_mandir}/man5/mandoc.db.5.gz %{_mandir}/man7/eqn.7.gz %{_mandir}/man7/mandoc_char.7.gz %{_mandir}/man7/man.7.gz %{_mandir}/man7/mdoc.7.gz %{_mandir}/man7/roff.7.gz %{_mandir}/man7/tbl.7.gz %{_mandir}/man8/makewhatis.8.gz %files -n libmandoc-devel %license LICENSE %{_libdir}/libmandoc.a %{_includedir}/eqn.h %{_includedir}/man.h %{_includedir}/mandoc.h %{_includedir}/mandoc_aux.h %{_includedir}/mandoc_parse.h %{_includedir}/mdoc.h %{_includedir}/roff.h %{_includedir}/tbl.h %{_mandir}/man3/mandoc.3* %{_mandir}/man3/mandoc_escape.3* %{_mandir}/man3/mandoc_malloc.3* %{_mandir}/man3/mansearch.3* %{_mandir}/man3/mchars_alloc.3* %{_mandir}/man3/tbl.3* %changelog * Mon Apr 22 2024 lilong <lilong@kylinos.cn> - 1.14.6-5 - Fix low-level dependency compilation failure * Mon Apr 15 2024 lilong <lilong@kylinos.cn> - 1.14.6-4 - Fix crash when mandoc install * Mon Oct 9 2023 laokz <zhangkai@iscas.ac.cn> - 1.14.6-3 - add CFLAGS for riscv64 to workaround fragile test-strptime.c * Thu Apr 6 2023 changzhangm <chaozhangm@isoftstone.com> - 1.14.6-2 - Update to 1.14.6-2 * Fri Sep 23 2022 chendexi <chendexi@kylinos.cn> - 1.14.6-1 - Initial package
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2