xref: /aosp_15_r20/external/apache-commons-compress/BUILDING.md (revision ba8755cb0ae00084b4d58129cd522613d3299f27)
1*ba8755cbSAndroid Build Coastguard Worker<!---
2*ba8755cbSAndroid Build Coastguard Worker Licensed to the Apache Software Foundation (ASF) under one or more
3*ba8755cbSAndroid Build Coastguard Worker contributor license agreements.  See the NOTICE file distributed with
4*ba8755cbSAndroid Build Coastguard Worker this work for additional information regarding copyright ownership.
5*ba8755cbSAndroid Build Coastguard Worker The ASF licenses this file to You under the Apache License, Version 2.0
6*ba8755cbSAndroid Build Coastguard Worker (the "License"); you may not use this file except in compliance with
7*ba8755cbSAndroid Build Coastguard Worker the License.  You may obtain a copy of the License at
8*ba8755cbSAndroid Build Coastguard Worker
9*ba8755cbSAndroid Build Coastguard Worker      http://www.apache.org/licenses/LICENSE-2.0
10*ba8755cbSAndroid Build Coastguard Worker
11*ba8755cbSAndroid Build Coastguard Worker Unless required by applicable law or agreed to in writing, software
12*ba8755cbSAndroid Build Coastguard Worker distributed under the License is distributed on an "AS IS" BASIS,
13*ba8755cbSAndroid Build Coastguard Worker WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*ba8755cbSAndroid Build Coastguard Worker See the License for the specific language governing permissions and
15*ba8755cbSAndroid Build Coastguard Worker limitations under the License.
16*ba8755cbSAndroid Build Coastguard Worker-->
17*ba8755cbSAndroid Build Coastguard Worker# Building Apache Commons Compress
18*ba8755cbSAndroid Build Coastguard Worker
19*ba8755cbSAndroid Build Coastguard WorkerIn order to build Commons Compress a JDK implementation 1.7 or higher
20*ba8755cbSAndroid Build Coastguard Workerand Apache Maven 3.x are required.
21*ba8755cbSAndroid Build Coastguard Worker
22*ba8755cbSAndroid Build Coastguard WorkerTo install the jars into your local Maven repository simply run
23*ba8755cbSAndroid Build Coastguard Worker
24*ba8755cbSAndroid Build Coastguard Worker    mvn clean install
25*ba8755cbSAndroid Build Coastguard Worker
26*ba8755cbSAndroid Build Coastguard Workerwhich will also run the unit tests.
27*ba8755cbSAndroid Build Coastguard Worker
28*ba8755cbSAndroid Build Coastguard WorkerSome tests are only run when specific profiles are enabled, these
29*ba8755cbSAndroid Build Coastguard Workertests require a lot of disk space as they test behavior for very large
30*ba8755cbSAndroid Build Coastguard Workerarchives.
31*ba8755cbSAndroid Build Coastguard Worker
32*ba8755cbSAndroid Build Coastguard Worker    mvn test -Prun-tarit
33*ba8755cbSAndroid Build Coastguard Worker
34*ba8755cbSAndroid Build Coastguard Workerruns tests for tar archives and requires more than 8GiB of disk space.
35*ba8755cbSAndroid Build Coastguard Worker
36*ba8755cbSAndroid Build Coastguard Worker    mvn test -Prun-zipit
37*ba8755cbSAndroid Build Coastguard Worker
38*ba8755cbSAndroid Build Coastguard Workerruns tests for zip archives that require up to 20 GiB of disk
39*ba8755cbSAndroid Build Coastguard Workerspace. In addition the tests will run for a long time (more then ten
40*ba8755cbSAndroid Build Coastguard Workerminutes, maybe even longer depending on your hardware) and heavily
41*ba8755cbSAndroid Build Coastguard Workerload the CPU at times.
42*ba8755cbSAndroid Build Coastguard Worker
43*ba8755cbSAndroid Build Coastguard Worker## Building the Site
44*ba8755cbSAndroid Build Coastguard Worker
45*ba8755cbSAndroid Build Coastguard WorkerThe site build produces license release audit (aka RAT) reports as
46*ba8755cbSAndroid Build Coastguard Workerwell as PMD and findbugs reports. Clirr didn't work for us anymore so
47*ba8755cbSAndroid Build Coastguard Workerwe switched to japicmp, the same is true for Cobertura which we had to
48*ba8755cbSAndroid Build Coastguard Workerreplace with jacoco.
49*ba8755cbSAndroid Build Coastguard Worker
50*ba8755cbSAndroid Build Coastguard Workerjapicmp requires the jar to be present when the site is built,
51*ba8755cbSAndroid Build Coastguard Workertherefore the package goal must be executed before creating the site.
52*ba8755cbSAndroid Build Coastguard Worker
53*ba8755cbSAndroid Build Coastguard Worker    mvn package site -Pjacoco
54*ba8755cbSAndroid Build Coastguard Worker
55*ba8755cbSAndroid Build Coastguard Workerbuilds the site.
56