xref: /aosp_15_r20/external/crosvm/rutabaga_gfx/ffi/build.sh (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker#!/bin/bash
2*bb4ee6a4SAndroid Build Coastguard Worker
3*bb4ee6a4SAndroid Build Coastguard Worker# Copyright 2024 The ChromiumOS Authors
4*bb4ee6a4SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
5*bb4ee6a4SAndroid Build Coastguard Worker# found in the LICENSE file.
6*bb4ee6a4SAndroid Build Coastguard Worker
7*bb4ee6a4SAndroid Build Coastguard Worker
8*bb4ee6a4SAndroid Build Coastguard WorkerFEATURES="$1"
9*bb4ee6a4SAndroid Build Coastguard WorkerTARGET_DIR="$2"
10*bb4ee6a4SAndroid Build Coastguard WorkerSHARED_LIB="$3"
11*bb4ee6a4SAndroid Build Coastguard WorkerVERSION="$4"
12*bb4ee6a4SAndroid Build Coastguard WorkerBUILDTYPE="$5"
13*bb4ee6a4SAndroid Build Coastguard WorkerCARGO_RELEASE="$6"
14*bb4ee6a4SAndroid Build Coastguard Worker
15*bb4ee6a4SAndroid Build Coastguard WorkerSHARED_LIB_FULL="$SHARED_LIB"".$VERSION"
16*bb4ee6a4SAndroid Build Coastguard WorkerSHARED_LIB_MAJOR="$SHARED_LIB"".0"
17*bb4ee6a4SAndroid Build Coastguard Worker
18*bb4ee6a4SAndroid Build Coastguard Worker# The following returns true if $CARGO_RELASE is the empty string
19*bb4ee6a4SAndroid Build Coastguard Workerif [[ -z "$CARGO_RELEASE" ]]
20*bb4ee6a4SAndroid Build Coastguard Workerthen
21*bb4ee6a4SAndroid Build Coastguard Worker  CARGO_TARGET_DIR="$TARGET_DIR" cargo build --features="$FEATURES" --target-dir="$TARGET_DIR"
22*bb4ee6a4SAndroid Build Coastguard Workerelse
23*bb4ee6a4SAndroid Build Coastguard Worker  CARGO_TARGET_DIR="$TARGET_DIR" cargo build --features="$FEATURES" --target-dir="$TARGET_DIR" --release
24*bb4ee6a4SAndroid Build Coastguard Workerfi
25*bb4ee6a4SAndroid Build Coastguard Worker
26*bb4ee6a4SAndroid Build Coastguard Workerrm "$SHARED_LIB" 2>/dev/null
27*bb4ee6a4SAndroid Build Coastguard Workerrm "$SHARED_LIB_FULL" 2>/dev/null
28*bb4ee6a4SAndroid Build Coastguard Workerrm "$SHARED_LIB_MAJOR" 2>/dev/null
29*bb4ee6a4SAndroid Build Coastguard Workercp "$BUILDTYPE"/"$SHARED_LIB" "$SHARED_LIB_FULL"
30*bb4ee6a4SAndroid Build Coastguard Workerln -s "$SHARED_LIB_FULL" "$SHARED_LIB"
31*bb4ee6a4SAndroid Build Coastguard Workerln -s "$SHARED_LIB_FULL" "$SHARED_LIB_MAJOR"
32