Skip to content

Commit 8c696b1

Browse files
authored
[CCIP-5323] Compile l2ep using forge instead of solc. (smartcontractkit#16710)
* Minor * Minor
1 parent aac9ddf commit 8c696b1

File tree

2 files changed

+33
-37
lines changed

2 files changed

+33
-37
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@chainlink/contracts': minor
3+
---
4+
5+
#updated [CCIP-5323] Compile l2ep using forge instead of solc.

contracts/scripts/native_solc_compile_all_l2ep

+28-37
Original file line numberDiff line numberDiff line change
@@ -6,44 +6,35 @@ echo " ┌───────────────────────
66
echo " │ Compiling L2EP contracts... │"
77
echo " └──────────────────────────────────────────────┘"
88

9-
SOLC_VERSION="0.8.24"
10-
OPTIMIZE_RUNS=1000000
11-
12-
SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
13-
python3 -m pip install --require-hashes -r $SCRIPTPATH/requirements.txt
14-
solc-select install $SOLC_VERSION
15-
solc-select use $SOLC_VERSION
16-
17-
ROOT="$(
18-
cd "$(dirname "$0")" >/dev/null 2>&1
19-
cd ../ && pwd -P
20-
)"
21-
22-
compileContract() {
23-
local version="$1"
24-
local srcpath="$2"
25-
solc \
26-
@openzeppelin/=$ROOT/node_modules/@openzeppelin/ \
27-
@eth-optimism/=$ROOT/node_modules/@eth-optimism/ \
28-
@scroll-tech/=$ROOT/node_modules/@scroll-tech/ \
29-
--overwrite --optimize --optimize-runs $OPTIMIZE_RUNS --metadata-hash none \
30-
-o $ROOT/solc/v$SOLC_VERSION/l2ep/"$version" \
31-
--abi --bin --allow-paths $ROOT/src/v0.8,$ROOT/node_modules \
32-
--evm-version paris \
33-
$ROOT/src/v0.8/l2ep/"$srcpath"
9+
PROJECT="l2ep"
10+
11+
CONTRACTS_DIR="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; cd ../ && pwd -P )"
12+
export FOUNDRY_PROFILE="$PROJECT"
13+
14+
compileContract () {
15+
local contract
16+
contract=$(basename "$1")
17+
echo "Compiling" "$contract"
18+
19+
local command
20+
command="forge build $CONTRACTS_DIR/src/v0.8/$PROJECT/"$1.sol" \
21+
--root $CONTRACTS_DIR \
22+
--extra-output-files bin abi \
23+
-o $CONTRACTS_DIR/solc/$PROJECT/$contract"
24+
$command
3425
}
3526

36-
compileContract v1_0_0 dev/arbitrum/ArbitrumValidator.sol
37-
compileContract v1_0_0 dev/arbitrum/ArbitrumSequencerUptimeFeed.sol
38-
compileContract v1_0_0 dev/arbitrum/ArbitrumCrossDomainForwarder.sol
39-
compileContract v1_0_0 dev/arbitrum/ArbitrumCrossDomainGovernor.sol
27+
compileContract arbitrum/ArbitrumValidator
28+
compileContract arbitrum/ArbitrumSequencerUptimeFeed
29+
compileContract arbitrum/ArbitrumCrossDomainForwarder
30+
compileContract arbitrum/ArbitrumCrossDomainGovernor
4031

41-
compileContract v1_0_0 dev/optimism/OptimismValidator.sol
42-
compileContract v1_0_0 dev/optimism/OptimismSequencerUptimeFeed.sol
43-
compileContract v1_0_0 dev/optimism/OptimismCrossDomainForwarder.sol
44-
compileContract v1_0_0 dev/optimism/OptimismCrossDomainGovernor.sol
32+
compileContract optimism/OptimismValidator
33+
compileContract optimism/OptimismSequencerUptimeFeed
34+
compileContract optimism/OptimismCrossDomainForwarder
35+
compileContract optimism/OptimismCrossDomainGovernor
4536

46-
compileContract v1_0_0 dev/scroll/ScrollValidator.sol
47-
compileContract v1_0_0 dev/scroll/ScrollSequencerUptimeFeed.sol
48-
compileContract v1_0_0 dev/scroll/ScrollCrossDomainForwarder.sol
49-
compileContract v1_0_0 dev/scroll/ScrollCrossDomainGovernor.sol
37+
compileContract scroll/ScrollValidator
38+
compileContract scroll/ScrollSequencerUptimeFeed
39+
compileContract scroll/ScrollCrossDomainForwarder
40+
compileContract scroll/ScrollCrossDomainGovernor

0 commit comments

Comments
 (0)