Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:20
nimble_parsec
nimble_parsec.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File nimble_parsec.spec of Package nimble_parsec
%def_enable check %def_without doc %define bname nimble_parsec Name: %bname Version: 1.3.1 Release: 2 Summary: A simple and fast library for text-based parser combinators for Elixir License: Apache-2.0 Group: Development/Tools/Other URL: https://github.com/plataformatec/%bname Source: %bname-%version.tar.xz #Patch: %bname-%version-git.patch BuildArch: noarch Provides: elixir-%bname = %version-%release Requires: elixir >= 1.6 BuildRequires: rpm-macros-erlang rpm-build-erlang BuildRequires: elixir >= 1.6 BuildRequires: mix >= 1.3.2-7 %description NimbleParsec is a simple and fast library for text-based parser combinators. Combinators are built during runtime and compiled into multiple clauses with binary matching. This provides the following benefits: - Performance: since it compiles to binary matching, it leverages many Erlang VM optimizations to generate extremely fast parser code with low memory usage - Composable: this library does not rely on macros for building and composing parsers, therefore they are fully composable. The only macros are defparsec/3 and defparsecp/3 which emit the compiled clauses with binary matching - No runtime dependency: after compilation, the generated parser clauses have no runtime dependency on NimbleParsec. This opens up the possibility to compile parsers and do not impose a dependency on users of your library * No footprints: NimbleParsec only needs to be imported in your modules. There is no need for `use NimbleParsec`, leaving no footprints on your modules The goal of this library is to focus on a set of primitives for writing efficient parser combinators. The composition aspect means you should be able to use those primitives to implement higher level combinators. %prep %setup -q -n %bname-%version #patch -p1 %build LANG=en_US.UTF-8 ERL_COMPILER_OPTIONS='[inline,verbose]' mix compile --force --no-deps-check %{?_with_doc:mix docs} %install install -d -m 0755 %buildroot%_otplibdir/%bname-%version/ebin install -p -m 0644 _build/dev/lib/%bname/ebin/* %buildroot%_otplibdir/%bname-%version/ebin/ install -d -m 0755 %buildroot%_docdir/%name install -m 0644 *.md %buildroot%_docdir/%name/ %if_with doc install -d -m 0755 %buildroot%_otplibdir/%bname-%version/doc/dist install -p -m 0644 doc/dist/* %buildroot%_otplibdir/%bname-%version/doc/dist/ install -p -m 0644 doc/*.html %buildroot%_otplibdir/%bname-%version/doc/ ln -sf %_otplibdir/%bname-%version/doc %buildroot%_docdir/%name/html %endif %if_enabled check %check LANG=en_US.UTF-8 ERL_COMPILER_OPTIONS='[inline,verbose]' mix test --no-deps-check %endif %files %defattr(-,root,root) %doc %_docdir/%name %_otplibdir/* %changelog * Sat Sep 02 2023 Led <ledest@gmail.com> 1.3.1-2 - clean up empty dirs * Sat Jul 15 2023 Led <ledest@gmail.com> 1.3.1-1 - 1.3.1 * Sat Feb 04 2023 Led <ledest@gmail.com> 1.2.2-1 - 1.2.2 * Sat Feb 04 2023 Led <ledest@gmail.com> 1.0.0-1 - 1.0.0 * Sat Feb 04 2023 Led <ledest@gmail.com> 0.5.3-1 - 0.5.3 * Sat Sep 07 2019 Led <ledest@gmail.com> 0.5.2-1 - 0.5.2
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor