From aedc7d8aef7ce807b3533f4771beceadb5bff4e8 Mon Sep 17 00:00:00 2001
From: Dmitry Selyutin <ghostmansd@gmail.com>
Date: Tue, 3 Jul 2018 22:57:17 +0300
Subject: [PATCH] module: custom hook for licenses field

---
 pygnulib/module.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/pygnulib/module.py b/pygnulib/module.py
index 2ec476752a..63fb6eea9a 100644
--- a/pygnulib/module.py
+++ b/pygnulib/module.py
@@ -8,6 +8,7 @@ import ast as _ast
 import codecs as _codecs
 import collections as _collections
 import hashlib as _hashlib
+import itertools as _itertools
 import json as _json
 import os as _os
 import re as _re
@@ -485,6 +486,9 @@ class FileModule(BaseModule):
         lambda line: line.strip() and not line.strip().startswith("#"),
         {line.strip() for line in text.split((",", "\n")["\n" in text.strip()])},
     ))
+    __LICENSES = lambda text: set(_itertools.chain.from_iterable(
+        line.split(" or ") for line in FileModule.__MULTILINE(text)
+    ))
     __TABLE = {
         "Description": (
             "description",
@@ -536,7 +540,7 @@ class FileModule(BaseModule):
         ),
         "License": (
             "licenses",
-            __MULTILINE,
+            __LICENSES,
         ),
         "Maintainer": (
             "maintainers",
-- 
2.39.5