sleeyax/burp-awesome-tls

Build cross platform .jar files

sleeyax opened this issue · 0 comments

Ideally, instead of having a release that looks like this

  • burp-awesome-tls.jar
  • *-server.dll
  • *-server.so
  • *-server.dylib

We should have something like this:

  • burp-awesome-tls-linux-x64.jar
  • burp-awesome-tls-win-x64.jar

This is much more user friendly.

Thinking further, we could also release an actual cross platform 'fat jar' burp-awesome-tls-fat.jar that contains all server binaries for all supported platforms (i.e. most popular win, mac and linux). This jar would be significantly bigger in size, but it would work everywhere and could be dragged around on an USB stick for example.


I'm not sure how this build process should look like though. I think we'd need something like this, unless I'm missing something obvious:

  • go build action builds all binaries and places them in ./src-go/server/build
  • a custom script copies each binary into src/java/resources with the correct JNA {OS}-{ARCH} folder name and builds the jar file each time one gets copied, plus cleans up afterwards (i.e delete the resources/{OS}-{ARCH} that was created)
  • a custom script copies all binaries to resources and builds the fatjar