github.com/noqcks/syft@v0.0.0-20230920222752-a9e2c4e288e5/syft/pkg/cataloger/java/test-fixtures/java-builds/Makefile (about)

     1  PKGSDIR=packages
     2  
     3  ifndef PKGSDIR
     4      $(error PKGSDIR is not set)
     5  endif
     6  
     7  all: jars archives native-image
     8  
     9  clean: clean-examples
    10  	rm -f $(PKGSDIR)/*
    11  
    12  clean-examples: clean-gradle clean-maven clean-jenkins clean-nestedjar
    13  
    14  .PHONY: maven gradle clean clean-gradle clean-maven clean-jenkins clean-examples clean-nestedjar jars archives
    15  
    16  jars: $(PKGSDIR)/example-java-app-maven-0.1.0.jar $(PKGSDIR)/example-java-app-gradle-0.1.0.jar $(PKGSDIR)/example-jenkins-plugin.hpi $(PKGSDIR)/spring-boot-0.0.1-SNAPSHOT.jar
    17  
    18  archives: $(PKGSDIR)/example-java-app-maven-0.1.0.zip $(PKGSDIR)/example-java-app-maven-0.1.0.tar $(PKGSDIR)/example-java-app-maven-0.1.0.tar.gz
    19  
    20  native-image: $(PKGSDIR)/example-java-app $(PKGSDIR)/gcc-amd64-darwin-exec-debug
    21  
    22  # jars within archives...
    23  
    24  $(PKGSDIR)/example-java-app-maven-0.1.0.zip: $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    25  	zip $(PKGSDIR)/example-java-app-maven-0.1.0.zip $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    26  
    27  $(PKGSDIR)/example-java-app-maven-0.1.0.tar: $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    28  	tar -cvf $(PKGSDIR)/example-java-app-maven-0.1.0.tar $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    29  
    30  $(PKGSDIR)/example-java-app-maven-0.1.0.tar.gz: $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    31  	tar -czvf $(PKGSDIR)/example-java-app-maven-0.1.0.tar.gz $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    32  
    33  # Nested jar...
    34  
    35  $(PKGSDIR)/spring-boot-0.0.1-SNAPSHOT.jar:
    36  	./build-example-sb-app-nestedjar.sh $(PKGSDIR)
    37  
    38  clean-nestedjar:
    39  	rm -rf	example-sb-app/target
    40  
    41  # Maven...
    42  $(PKGSDIR)/example-java-app-maven-0.1.0.jar:
    43  	./build-example-java-app-maven.sh $(PKGSDIR)
    44  
    45  clean-maven:
    46  	rm -rf	example-java-app/\? \
    47  			example-java-app/target \
    48  			example-java-app/dependency-reduced-pom.xml
    49  
    50  # Gradle...
    51  $(PKGSDIR)/example-java-app-gradle-0.1.0.jar:
    52  	./build-example-java-app-gradle.sh $(PKGSDIR)
    53  
    54  clean-gradle:
    55  	rm -rf	example-java-app/.gradle \
    56  			example-java-app/build
    57  
    58  # Jenkins plugin
    59  $(PKGSDIR)/example-jenkins-plugin.hpi , $(PKGSDIR)/example-jenkins-plugin.jar:
    60  	./build-example-jenkins-plugin.sh $(PKGSDIR)
    61  
    62  clean-jenkins:
    63  	rm -rf	example-jenkins-plugin/target \
    64  			example-jenkins-plugin/dependency-reduced-pom.xml \
    65  			example-jenkins-plugin/*.exploding
    66  
    67  # Native Image...
    68  $(PKGSDIR)/example-java-app: $(PKGSDIR)/example-java-app-maven-0.1.0.jar
    69  	./build-example-java-app-native-image.sh $(PKGSDIR)
    70  
    71  $(PKGSDIR)/gcc-amd64-darwin-exec-debug:
    72  	./build-example-macho-binary.sh $(PKGSDIR)
    73  
    74  # we need a way to determine if CI should bust the test cache based on the source material
    75  .PHONY: cache.fingerprint
    76  cache.fingerprint:
    77  	find example* build* gradle* Makefile -type f -exec sha256sum {} \; | sort | tee /dev/stderr | tee cache.fingerprint
    78  	sha256sum cache.fingerprint