github.com/lirm/aeron-go@v0.0.0-20230415210743-920325491dc4/cluster/codecs/generate.sh (about) 1 #!/usr/bin/env bash 2 3 # Copyright (C) 2020-2022 Talos, Inc. 4 5 # This isn't that useful without modification or an identical layout to the 6 # defaults below so you might consider it more documentation than working 7 # script. 8 9 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" 10 AERON_DIR=$DIR/../../../aeron 11 SBE_DIR=$DIR/../../../simple-binary-encoding 12 AGRONA_DIR=$DIR/../../../agrona 13 AGRONA_VERSION=1.12.0 14 # AGRONA_JAR=`find ~/.gradle/ | grep agrona-$AGRONA_VERSION.jar | head -1` 15 AGRONA_JAR=$AGRONA_DIR/agrona/build/libs/agrona-1.12.0.jar 16 17 if [ ! -d "$AERON_DIR" ] 18 then 19 echo "Can't find aeron directory ($AERON_DIR)" 20 exit 1 21 else 22 echo "Using aeron from $AERON_DIR" 23 fi 24 25 if [ ! -d "$SBE_DIR" ] 26 then 27 echo "Can't find SBE directory ($SBE_DIR)" 28 exit 1 29 else 30 echo "Using SBE from $SBE_DIR" 31 fi 32 33 if [ ! -f "$AGRONA_JAR" ] 34 then 35 echo "Can't find agrona jar (looking for version $AGRONA_VERSION)" 36 exit 1 37 else 38 echo "Using Agrona from $AGRONA_JAR" 39 fi 40 41 java \ 42 -Dsbe.output.dir=$DIR/.. \ 43 -Dsbe.target.language=golang \ 44 -Dsbe.validation.xsd=$SBE_DIR/sbe-tool/src/main/resources/fpl/sbe.xsd \ 45 -Dfile.encoding=UTF-8 \ 46 -Dsbe.target.namespace=codecs \ 47 -cp $SBE_DIR/sbe-tool/build/classes/java/main:$SBE_DIR/sbe-tool/build/resources/main:$AGRONA_JAR \ 48 uk.co.real_logic.sbe.SbeTool \ 49 $AERON_DIR/aeron-cluster/src/main/resources/cluster/aeron-cluster-codecs.xml