1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
4 ;;; This file is part of GNU Guix.
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19 (define-module (gnu packages maven-parent-pom)
20 #:use-module ((guix licenses) #:prefix license:)
21 #:use-module (guix packages)
22 #:use-module (guix git-download)
23 #:use-module (guix utils)
24 #:use-module (guix build-system ant)
25 #:use-module (gnu packages java))
27 (define (make-apache-parent-pom version hash)
30 (name "apache-parent-pom")
35 (url "https://github.com/apache/maven-apache-parent")
36 (commit (string-append "apache-" version))))
37 (file-name (git-file-name name version))
38 (sha256 (base32 hash))))
39 (build-system ant-build-system)
43 (modify-phases %standard-phases
47 (install-pom-file "pom.xml")))))
48 (home-page "https://apache.org/")
49 (synopsis "Apache parent pom")
50 (description "This package contains the Apache parent POM.")
51 (license license:asl2.0))))
53 (define-public apache-parent-pom-6
54 (make-apache-parent-pom
55 "6" "1bq0ma2ya2cnp2icd4l20sv6y7zxqr9sa35wzv1s49nqsrm38kw3"))
57 (define-public apache-parent-pom-11
58 (make-apache-parent-pom
59 "11" "0m1a4db8s6y8f4vvm9bx7zx7lixcvaah064560nbja7na3xz6lls"))
61 (define-public apache-parent-pom-13
62 (make-apache-parent-pom
63 "13" "1cfxaz1jy8fbn06sb648qpiq23swpbj3kb5ya7f9g9jmya5fy09z"))
65 (define-public apache-parent-pom-16
66 (make-apache-parent-pom
67 "16" "1y5b0dlc72ijcqfffdbh0k75qwaddy5qw725v9pzhrzqkpaa51xb"))
69 (define-public apache-parent-pom-17
70 (make-apache-parent-pom
71 "17" "06hj5d6rdkmwl24k2rvzj8plq8x1ncsbjck4w3awz1hp9gngg4y5"))
73 (define-public apache-parent-pom-18
74 (make-apache-parent-pom
75 "18" "1il97vpdmv5k2gnyinj45q00f7f4w9hcb588digwfid5bskddnyy"))
77 (define-public apache-parent-pom-19
78 (make-apache-parent-pom
79 "19" "02drnwv2qqk1dmxbmmrk0bi1iil5cal9l47w53ascpbjg6242mp1"))
81 (define-public apache-parent-pom-21
82 (make-apache-parent-pom
83 "21" "0clcbrq1b2b8sbvlqddyw2dg5niq25dhdma9sk4b0i30hqaipx96"))
85 (define (make-apache-commons-parent-pom version hash parent)
88 (name "apache-commons-parent-pom")
93 (url "https://github.com/apache/commons-parent")
94 (commit (string-append "commons-parent-" version))))
95 (file-name (git-file-name name version))
96 (sha256 (base32 hash))))
97 (build-system ant-build-system)
101 (modify-phases %standard-phases
105 (install-pom-file "pom.xml")))))
108 `(("parent" ,parent))
110 (home-page "https://maven.apache.org/")
111 (synopsis "Apache Commons parent pom")
112 (description "This package contains the Apache Commons parent POM.")
113 (license license:asl2.0))))
115 (define-public apache-commons-parent-pom-39
116 (make-apache-commons-parent-pom
117 "39" "0mjx48a55ik1h4hsxhifkli1flvkp6d05ab14p4al0fc6rhdxi46"
118 apache-parent-pom-16))
120 (define-public apache-commons-parent-pom-41
121 (make-apache-commons-parent-pom
122 "41" "1k184amdqdx62bb2k0m9v93zzx768qcyam5dvdgksqc1aaqhadlb"
123 apache-parent-pom-18))
125 (define-public apache-commons-parent-pom-48
126 (make-apache-commons-parent-pom
127 "48" "0dk8qp7swbh4y1q7q34y14yhigzl5yz0ixa8jhhhq91yc2q570iq"
128 apache-parent-pom-21))
130 (define-public apache-commons-parent-pom-50
131 (make-apache-commons-parent-pom
132 "50" "0ki8px35dan51ashblpw6rdl27c2fq62slazhslhq3lr4fwlpvxs"
133 apache-parent-pom-21))
135 (define-public java-weld-parent-pom
138 (name "java-weld-parent-pom")
143 (url "https://github.com/weld/parent")
145 (file-name (git-file-name name version))
148 "0rbvizcsma456mw9fvp4dj9cljh97nswvhi04xhczi38j5bgal0m"))))
149 (build-system ant-build-system)
153 (modify-phases %standard-phases
156 (install-pom-file "pom.xml")))))
157 (home-page "https://github.com/weld/parent")
158 (synopsis "Pom parent file for weld projects")
159 (description "This package contains the parent Maven Pom for weld projects.")
160 (license license:asl2.0))))
162 (define (make-java-sonatype-forge-parent-pom version hash)
165 (name "java-sonatype-forge-parent-pom")
170 (url "https://github.com/sonatype/oss-parents")
171 (commit (string-append "forge-parent-" version))))
172 (file-name (git-file-name name version))
173 (sha256 (base32 hash))))
174 (build-system ant-build-system)
178 (modify-phases %standard-phases
182 (install-pom-file "pom.xml")))))
183 (home-page "https://github.com/sonatype/oss-parents")
184 (synopsis "Sonatype forge parent pom")
185 (description "This package contains a single pom.xml file that is used by
186 other projects as their parent pom.")
187 (license license:asl2.0))))
189 (define-public java-sonatype-forge-parent-pom-4
190 (make-java-sonatype-forge-parent-pom
191 "4" "1gip239ar20qzy6yf37r6ks54bl7gqi1v49p65manrz84cmad0dh"))
193 (define-public java-sonatype-forge-parent-pom-5
194 (make-java-sonatype-forge-parent-pom
195 "5" "0pr60wyjmaml4flmcij6l94b72ryx5gsiiasiwvcvrz9b2fkb3cd"))
197 (define-public java-sonatype-forge-parent-pom-6
198 (make-java-sonatype-forge-parent-pom
199 "6" "0sa5wn5kc6y74m9g3azkm5i9d7kvyvgdw7wjlp7bjgy9s5qkbhgz"))
201 (define-public java-sonatype-forge-parent-pom-10
202 (make-java-sonatype-forge-parent-pom
203 "10" "1n89wb00q4s9nwpqq6q1h4nzakw1l1rppjygxkl3iid7m5fnj60n"))
205 (define-public java-sonatype-spice-parent-pom-15
208 (name "java-sonatype-spice-parent-pom")
213 (url "https://github.com/sonatype/oss-parents")
214 ;; The only commit where spice-parent is version 15
215 (commit "a4d1169c66fb21b214cb3eff2f056ec3e3695ca7")))
216 (file-name (git-file-name name version))
219 "0h62h6m31srmqnd1bhyspz6hdhkkv48knkj0ximq3pzdixgzyxgy"))))
220 (build-system ant-build-system)
222 `(("java-sonatype-forge-parent-pom-5" ,java-sonatype-forge-parent-pom-5)))
226 (modify-phases %standard-phases
230 (install-pom-file "pom.xml")))))
231 (home-page "https://github.com/sonatype/oss-parents")
232 (synopsis "Sonatype spice parent pom")
233 (description "This package contains a single pom.xml file that is used by
234 other projects as their parent pom.")
235 (license license:asl2.0))))
237 (define-public java-sonatype-spice-parent-pom-17
240 (inherit java-sonatype-spice-parent-pom-15)
245 (url "https://github.com/sonatype/oss-parents")
246 (commit "spice-parent-17")))
247 (file-name (git-file-name "java-sonatype-spice-parent-pom" version))
250 "1d4jh1scgnjwhv8f0r052vrksg0kman09hslfvfvpfidl8rwiigq"))))
254 (modify-phases %standard-phases
258 (install-pom-file "spice-parent/pom.xml")))))
260 `(("java-sonatype-forge-parent-pom-10" ,java-sonatype-forge-parent-pom-10))))))
262 (define-public java-sonatype-spice-parent-pom-12
265 (inherit java-sonatype-spice-parent-pom-15)
270 (url "https://github.com/sonatype/oss-parents")
271 ;; The only commit where spice-parent is version 12
272 (commit "95088ae2891f673828351d7d9150240859b4a29a")))
273 (file-name (git-file-name "java-sonatype-spice-parent-pom" version))
276 "0pq5yf6swn43rxdfksnqsky1402zza2xq1aypwma9jkck2yl0vma"))))
278 `(("java-sonatype-forge-parent-pom-4" ,java-sonatype-forge-parent-pom-4))))))
280 (define-public java-sonatype-oss-parent-pom-7
283 (name "java-sonatype-oss-parent-pom")
288 (url "https://github.com/sonatype/oss-parents")
289 (commit (string-append "oss-parent-" version))))
290 (file-name (git-file-name name version))
293 "0lkvkmm51vrrrp79ksq3i2v693279rbn06yxck70ivhjrbq77927"))))
294 (build-system ant-build-system)
298 (modify-phases %standard-phases
302 (install-pom-file "pom.xml")))))
303 (home-page "https://github.com/sonatype/oss-parents")
304 (synopsis "Sonatype oss parent pom")
305 (description "This package contains a single pom.xml file that is used by
306 other projects as their parent pom.")
307 (license license:asl2.0))))