dac34c04e72b965ecdee46ba4003523add1bc1d2
[jalview.git] / getdown / src / getdown / launcher / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3   <modelVersion>4.0.0</modelVersion>
4   <parent>
5     <groupId>com.threerings.getdown</groupId>
6     <artifactId>getdown</artifactId>
7     <version>1.8.3-1.2.7_FJVL</version>
8   </parent>
9
10   <artifactId>getdown-launcher</artifactId>
11   <packaging>jar</packaging>
12   <name>Getdown Launcher</name>
13   <description>The Getdown app updater/launcher</description>
14
15   <repositories>
16     <repository>
17       <id>lib-repo</id>
18       <url>file://${basedir}/../lib</url>
19     </repository>
20   </repositories>
21
22   <dependencies>
23     <dependency>
24       <groupId>com.threerings.getdown</groupId>
25       <artifactId>getdown-core</artifactId>
26       <version>${project.version}</version>
27     </dependency>
28     <dependency>
29       <groupId>com.samskivert</groupId>
30       <artifactId>samskivert</artifactId>
31       <version>1.2</version>
32     </dependency>
33     <dependency>
34       <groupId>jregistrykey</groupId>
35       <artifactId>jregistrykey</artifactId>
36       <version>1.0</version>
37       <optional>true</optional>
38     </dependency>
39   </dependencies>
40
41   <build>
42     <plugins>
43       <!--
44       <plugin>
45         <groupId>com.github.wvengen</groupId>
46         <artifactId>proguard-maven-plugin</artifactId>
47         <version>2.0.14</version>
48         <executions>
49          <execution>
50            <phase>package</phase>
51            <goals>
52              <goal>proguard</goal>
53            </goals>
54          </execution>
55         </executions>
56         <dependencies>
57           <dependency>
58             <groupId>net.sf.proguard</groupId>
59             <artifactId>proguard-base</artifactId>
60             <version>6.0.3</version>
61             <scope>runtime</scope>
62           </dependency>
63         </dependencies>
64         <configuration>
65           <proguardVersion>6.0.3</proguardVersion>
66           <outputDirectory>${project.build.directory}</outputDirectory>
67           <outjar>${project.build.finalName}.jar</outjar>
68           <injar>${project.build.finalName}.jar</injar>
69           <assembly>
70             <inclusions>
71               <inclusion>
72                 <groupId>com.threerings.getdown</groupId>
73                 <artifactId>getdown-core</artifactId>
74               </inclusion>
75               <inclusion>
76                 <groupId>com.samskivert</groupId>
77                 <artifactId>samskivert</artifactId>
78                 <filter>
79                   !**/*.java,
80                   !**/swing/RuntimeAdjust*,
81                   !**/swing/util/ButtonUtil*,
82                   !**/util/CalendarUtil*,
83                   !**/util/Calendars*,
84                   !**/util/Log4JLogger*,
85                   !**/util/PrefsConfig*,
86                   !**/util/SignalUtil*,
87                   com/samskivert/Log.class,
88                   **/samskivert/io/**,
89                   **/samskivert/swing/**,
90                   **/samskivert/text/**,
91                   **/samskivert/util/**
92                 </filter>
93               </inclusion>
94               <inclusion>
95                 <groupId>jregistrykey</groupId>
96                 <artifactId>jregistrykey</artifactId>
97               </inclusion>
98             </inclusions>
99           </assembly>
100           <obfuscate>true</obfuscate>
101           <options>
102             <option>-keep public class com.threerings.getdown.** { *; }</option>
103             <option>-keep public class ca.beq.util.win32.registry.** { *; }</option>
104             <option>-keepattributes Exceptions, InnerClasses, Signature</option>
105           </options>
106           <libs>
107             <lib>${rt.jar.path}</lib>
108           </libs>
109           <addMavenDescriptor>false</addMavenDescriptor>
110         </configuration>
111       </plugin>
112       -->
113       <plugin>
114         <groupId>org.apache.maven.plugins</groupId>
115         <artifactId>maven-jar-plugin</artifactId>
116         <version>3.1.0</version>
117         <configuration>
118           <archive>
119             <manifest>
120               <mainClass>com.threerings.getdown.launcher.GetdownApp</mainClass>
121               <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
122             </manifest>
123             <manifestEntries>
124               <Permissions>all-permissions</Permissions>
125               <Application-Name>Getdown</Application-Name>
126               <Codebase>*</Codebase>
127               <Application-Library-Allowable-Codebase>*</Application-Library-Allowable-Codebase>
128               <Caller-Allowable-Codebase>*</Caller-Allowable-Codebase>
129               <Trusted-Library>true</Trusted-Library>
130             </manifestEntries>
131           </archive>
132         </configuration>
133       </plugin>
134
135       <plugin>
136         <groupId>org.apache.maven.plugins</groupId>
137         <artifactId>maven-shade-plugin</artifactId>
138         <version>3.2.1</version>
139         <configuration>
140           <!-- put your configurations here -->
141         </configuration>
142         <executions>
143           <execution>
144             <phase>package</phase>
145             <goals>
146               <goal>shade</goal>
147             </goals>
148             <!--
149             <configuration>
150               <minimizeJar>true</minimizeJar>
151               <filters>
152                 <filter>
153                   <artifact>install4j-runtime</artifact>
154                   <includes>
155                     <include>**</include>
156                   </includes>
157                 </filter>
158               </filters>
159             </configuration>
160             -->
161           </execution>
162         </executions>
163       </plugin>
164
165
166
167
168     </plugins>
169   </build>
170
171   <profiles>
172     <!-- finagling to find rt.jar -->
173     <profile>
174       <id>non-mac-jre</id>
175       <activation>
176         <file><exists>${java.home}/../lib/rt.jar</exists></file>
177       </activation>
178       <properties>
179         <rt.jar.path>${java.home}/../lib/rt.jar</rt.jar.path>
180       </properties>
181     </profile>
182     <profile>
183       <id>non-mac-jdk</id>
184       <activation>
185         <file><exists>${java.home}/lib/rt.jar</exists></file>
186       </activation>
187       <properties>
188         <rt.jar.path>${java.home}/lib/rt.jar</rt.jar.path>
189       </properties>
190     </profile>
191     <profile>
192       <id>java-9-jdk</id>
193       <activation>
194         <file><exists>${java.home}/jmods/java.base.jmod</exists></file>
195       </activation>
196       <build>
197         <plugins>
198           <plugin>
199             <groupId>com.github.wvengen</groupId>
200             <artifactId>proguard-maven-plugin</artifactId>
201             <configuration>
202               <libs>
203                 <lib>${java.home}/jmods/java.base.jmod</lib>
204                 <lib>${java.home}/jmods/java.desktop.jmod</lib>
205                 <lib>${java.home}/jmods/java.logging.jmod</lib>
206                 <lib>${java.home}/jmods/jdk.jsobject.jmod</lib>
207               </libs>
208             </configuration>
209           </plugin>
210         </plugins>
211       </build>
212     </profile>
213   </profiles>
214 </project>