commit:     a1474f424871dff1c18e5c0a678a9f9f59a75bdb
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Fri Jul  2 00:38:57 2021 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Fri Jul  2 00:38:57 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=a1474f42

dev-python/cmarkgfm: initial import

Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 dev-python/cmarkgfm/Manifest                       |  1 +
 dev-python/cmarkgfm/cmarkgfm-0.5.3.ebuild          | 32 +++++++++++++++
 .../cmarkgfm-0.5.3-use-system-cmark-gfm.patch      | 47 ++++++++++++++++++++++
 dev-python/cmarkgfm/metadata.xml                   | 13 ++++++
 4 files changed, 93 insertions(+)

diff --git a/dev-python/cmarkgfm/Manifest b/dev-python/cmarkgfm/Manifest
new file mode 100644
index 000000000..e300e30db
--- /dev/null
+++ b/dev-python/cmarkgfm/Manifest
@@ -0,0 +1 @@
+DIST cmarkgfm-0.5.3.tar.gz 12223 BLAKE2B 
fadbe49a59e4de24e51d2bb3f72138a67fa786c7c4b3901dc4689d1edbac8b7c04beb73c4c77b06fec933e526fdbf75640022ad41864054e69c9ae7ba0131d90
 SHA512 
2c4f891ca845cfa87adc7d3ab5b20999b1747c30d66a7ed52a2e870e77fac0993207f9ff49256c7588976475cb0adb816f70d2834dc26724d6ae50ff395ca734

diff --git a/dev-python/cmarkgfm/cmarkgfm-0.5.3.ebuild 
b/dev-python/cmarkgfm/cmarkgfm-0.5.3.ebuild
new file mode 100644
index 000000000..4130aa614
--- /dev/null
+++ b/dev-python/cmarkgfm/cmarkgfm-0.5.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for GitHub's cmark"
+HOMEPAGE="https://github.com/theacodes/cmarkgfm";
+SRC_URI="https://github.com/theacodes/cmarkgfm/archive/refs/tags/${PV}.tar.gz 
-> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="
+       app-text/cmark-gfm
+       virtual/python-cffi[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="app-text/dos2unix"
+
+PATCHES=( "${FILESDIR}/${P}-use-system-cmark-gfm.patch" )
+
+src_prepare() {
+       dos2unix src/cmarkgfm/build_cmark.py || die
+       default
+}
+
+distutils_enable_tests pytest

diff --git 
a/dev-python/cmarkgfm/files/cmarkgfm-0.5.3-use-system-cmark-gfm.patch 
b/dev-python/cmarkgfm/files/cmarkgfm-0.5.3-use-system-cmark-gfm.patch
new file mode 100644
index 000000000..47894810e
--- /dev/null
+++ b/dev-python/cmarkgfm/files/cmarkgfm-0.5.3-use-system-cmark-gfm.patch
@@ -0,0 +1,47 @@
+--- a/src/cmarkgfm/build_cmark.py
++++ b/src/cmarkgfm/build_cmark.py
+@@ -8,12 +8,8 @@
+ import cffi
+ 
+ 
+-# Get the directory for the cmark source files. It's under the package root
+-# as /third_party/cmark/src
+ HERE = os.path.dirname(os.path.abspath(__file__))
+ PACKAGE_ROOT = os.path.abspath(os.path.join(HERE, '../../'))
+-SRC_DIR = os.path.join(PACKAGE_ROOT, 'third_party/cmark/src')
+-EXTENSIONS_SRC_DIR = os.path.join(PACKAGE_ROOT, 
'third_party/cmark/extensions')
+ UNIX_GENERATED_SRC_DIR = os.path.join(PACKAGE_ROOT, 'generated', 'unix')
+ WIN_GENERATED_SRC_DIR = os.path.join(PACKAGE_ROOT, 'generated', 'windows')
+ 
+@@ -27,20 +23,6 @@
+     CMARK_MODULE_H = fh.read()
+ 
+ 
+-def _get_sources(dir, exclude=set()):
+-    sources = glob.iglob(os.path.join(dir, '*.c'))
+-    return sorted([
+-        os.path.relpath(path, start=PACKAGE_ROOT)
+-        for path in
+-        sources
+-        if os.path.basename(path) not in exclude
+-    ])
+-
+-
+-SOURCES = _get_sources(SRC_DIR, exclude=set(['main.c']))
+-SOURCES.extend(_get_sources(EXTENSIONS_SRC_DIR))
+-
+-
+ def _compiler_type():
+     """
+     Gets the compiler type from distutils. On Windows with MSVC it will be
+@@ -76,8 +58,8 @@
+ ffibuilder.set_source(
+     'cmarkgfm._cmark',
+     CMARK_MODULE_H,
+-    sources=SOURCES,
+-    include_dirs=[SRC_DIR, EXTENSIONS_SRC_DIR, GENERATED_SRC_DIR],
++    include_dirs=[GENERATED_SRC_DIR],
++    libraries=["cmark-gfm", "cmark-gfm-extensions"],
+     extra_compile_args=EXTRA_COMPILE_ARGS
+ )
+ 

diff --git a/dev-python/cmarkgfm/metadata.xml b/dev-python/cmarkgfm/metadata.xml
new file mode 100644
index 000000000..882411550
--- /dev/null
+++ b/dev-python/cmarkgfm/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+    <maintainer type="person">
+      <email>lssndrbarbi...@gmail.com</email>
+      <name>Alessandro Barbieri</name>
+    </maintainer>
+    <upstream>
+        <bugs-to>https://github.com/theacodes/cmarkgfm/issues</bugs-to>
+        <remote-id type="github">theacodes/cmarkgfm</remote-id>
+        <remote-id type="pypi">cmarkgfm</remote-id>
+    </upstream>
+</pkgmetadata>

Reply via email to