You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by an...@apache.org on 2022/02/17 14:55:47 UTC
[mynewt-nimble] branch master updated: babblesim: Rework sdk package
This is an automated email from the ASF dual-hosted git repository.
andk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git
The following commit(s) were added to refs/heads/master by this push:
new a63418c babblesim: Rework sdk package
a63418c is described below
commit a63418cc12ce97780a3f4792aaeb5bec02d3dd45
Author: Andrzej Kaczmarek <an...@codecoup.pl>
AuthorDate: Thu Feb 17 07:02:44 2022 +0100
babblesim: Rework sdk package
This moves all external components to separate sdk package. We'll link
both bsim components and nrfx there and setup include paths.
---
babblesim/.gitignore | 3 --
babblesim/core/pkg.yml | 9 ++----
babblesim/hw/bsp/nrf52_bsim/pkg.yml | 6 ++--
babblesim/hw/mcu/nordic/nrf52_bsim/pkg.yml | 2 +-
babblesim/nrfx/pkg.yml | 37 ----------------------
babblesim/sdk/.gitignore | 3 ++
babblesim/{hw/babblesim => sdk}/pkg.yml | 33 ++++++++++---------
.../scripts/link_babblesim.sh} | 30 +++---------------
babblesim/{nrfx => sdk}/scripts/link_nrfx.sh | 5 +--
9 files changed, 32 insertions(+), 96 deletions(-)
diff --git a/babblesim/.gitignore b/babblesim/.gitignore
deleted file mode 100644
index 78e34f1..0000000
--- a/babblesim/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-hw/babblesim/components
-hw/babblesim/src
-nrfx/src
\ No newline at end of file
diff --git a/babblesim/core/pkg.yml b/babblesim/core/pkg.yml
index 3b0c2e9..1a1ec76 100644
--- a/babblesim/core/pkg.yml
+++ b/babblesim/core/pkg.yml
@@ -18,20 +18,15 @@
#
pkg.name: babblesim/core
-pkg.type: sdk
pkg.description: time machine, irq handeler, core
pkg.author: "Apache Mynewt <de...@mynewt.apache.org>"
pkg.homepage: "http://mynewt.apache.org/"
pkg.keywords:
pkg.deps:
- - "@apache-mynewt-core/kernel/os"
- - "@apache-mynewt-nimble/nimble/controller"
- - "@apache-mynewt-nimble/nimble/transport"
- - "babblesim/hw/babblesim"
+ - "babblesim/sdk"
-pkg.req_apis:
- - ble_transport
+pkg.cflags: -std=gnu99
pkg.init:
bsim_start: 9999
diff --git a/babblesim/hw/bsp/nrf52_bsim/pkg.yml b/babblesim/hw/bsp/nrf52_bsim/pkg.yml
index 6662a76..e22e767 100644
--- a/babblesim/hw/bsp/nrf52_bsim/pkg.yml
+++ b/babblesim/hw/bsp/nrf52_bsim/pkg.yml
@@ -31,7 +31,7 @@ pkg.cflags.HARDFLOAT:
- -mfloat-abi=hard -mfpu=fpv4-sp-d16
pkg.deps:
- - "@apache-mynewt-core/hw/drivers/uart/uart_hal"
- - "babblesim/hw/mcu/nordic/nrf52_bsim"
- - "babblesim/hw/babblesim"
- "babblesim/core"
+ - "babblesim/hw/mcu/nordic/nrf52_bsim"
+ - "@apache-mynewt-core/hw/drivers/uart/uart_hal"
+ - "@apache-mynewt-nimble/nimble/controller"
diff --git a/babblesim/hw/mcu/nordic/nrf52_bsim/pkg.yml b/babblesim/hw/mcu/nordic/nrf52_bsim/pkg.yml
index 10069a2..99e59a2 100644
--- a/babblesim/hw/mcu/nordic/nrf52_bsim/pkg.yml
+++ b/babblesim/hw/mcu/nordic/nrf52_bsim/pkg.yml
@@ -26,7 +26,7 @@ pkg.lflags:
- -lpthread
pkg.deps:
- - "babblesim/nrfx"
+ - "babblesim/core"
pkg.deps.BLE_CONTROLLER:
- "@apache-mynewt-nimble/nimble/drivers/nrf52"
diff --git a/babblesim/nrfx/pkg.yml b/babblesim/nrfx/pkg.yml
deleted file mode 100644
index 54a385e..0000000
--- a/babblesim/nrfx/pkg.yml
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-pkg.name: babblesim/nrfx
-pkg.description: nrfx wrapper for BabbleSim
-pkg.author: "Apache Mynewt <de...@mynewt.apache.org>"
-pkg.homepage: "https://mynewt.apache.org/"
-pkg.type: sdk
-
-pkg.cflags: -std=gnu99
-pkg.include_dirs:
- - src/
- - src/drivers/
- - src/hal/
- - src/mdk/
-
-pkg.deps:
- - "@apache-mynewt-core/hw/hal"
-
-pkg.pre_build_cmds:
- scripts/link_nrfx.sh: 1
diff --git a/babblesim/sdk/.gitignore b/babblesim/sdk/.gitignore
new file mode 100644
index 0000000..b269fe6
--- /dev/null
+++ b/babblesim/sdk/.gitignore
@@ -0,0 +1,3 @@
+components
+nrfx
+src
\ No newline at end of file
diff --git a/babblesim/hw/babblesim/pkg.yml b/babblesim/sdk/pkg.yml
similarity index 74%
rename from babblesim/hw/babblesim/pkg.yml
rename to babblesim/sdk/pkg.yml
index ad28efb..a542a30 100644
--- a/babblesim/hw/babblesim/pkg.yml
+++ b/babblesim/sdk/pkg.yml
@@ -17,28 +17,31 @@
# under the License.
#
-pkg.name: babblesim/hw/babblesim
-pkg.description: BabbleSim stuff
+pkg.name: babblesim/sdk
+pkg.type: sdk
+pkg.description: External files required to build BabbleSim
pkg.author: "Apache Mynewt <de...@mynewt.apache.org>"
-pkg.homepage: "http://mynewt.apache.org/"
+pkg.homepage: "https://mynewt.apache.org/"
-pkg.type: sdk
+pkg.cflags: -std=gnu99
pkg.include_dirs:
- - components/ext_NRF52_hw_models/src/nrfx/mdk_replacements
- - components/ext_NRF52_hw_models/src/HW_models
- components/ext_NRF52_hw_models/src/nrfx_config
- components/ext_NRF52_hw_models/src/nrfx/nrfx_replacements
- - components/libUtilv1/src/
- - components/libPhyComv1/src/
- - components/libRandv2/src/
- - components/ext_libCryptov1/src/
-
-pkg.src_dirs:
- - src
+ - components/ext_NRF52_hw_models/src/nrfx/mdk_replacements
+ - components/ext_NRF52_hw_models/src/HW_models
+ - components/libUtilv1/src
+ - components/libPhyComv1/src
+ - components/libRandv2/src
+ - components/ext_libCryptov1/src
+ - nrfx
+ - nrfx/drivers
+ - nrfx/hal
+ - nrfx/mdk
pkg.pre_build_cmds:
- scripts/pre_build1.sh: 1
+ scripts/link_babblesim.sh: 1
+ scripts/link_nrfx.sh: 2
pkg.lflags:
- - -ldl
\ No newline at end of file
+ - -ldl
diff --git a/babblesim/hw/babblesim/scripts/pre_build1.sh b/babblesim/sdk/scripts/link_babblesim.sh
similarity index 70%
rename from babblesim/hw/babblesim/scripts/pre_build1.sh
rename to babblesim/sdk/scripts/link_babblesim.sh
index 3f3fec5..9254a18 100755
--- a/babblesim/hw/babblesim/scripts/pre_build1.sh
+++ b/babblesim/sdk/scripts/link_babblesim.sh
@@ -34,36 +34,14 @@ if [ -z ${BSIM_OUT_PATH+x} ]; then
exit 1
fi
-if [[ -d "$(pwd)/components" ]]
-then
- echo "Babblesim components: Directory exists. Removing and linking again..."
- rm -r $(pwd)/components
-else
- echo "Babblesim components: Linking components..."
-fi
-
-ln -nsf $BSIM_OUT_PATH/components
-
-if [[ -d "$(pwd)/src" ]]
-then
- echo "Babblesim libraries src: Directory exists. Removing and linking again..."
- rm -r $(pwd)/src
-else
- echo "Babblesim components: Linking components..."
-fi
-
-mkdir -p src
-ln -nsf $BSIM_OUT_PATH/components
-
-# Create links to all .32.a files
-# find $BSIM_OUT_PATH/lib/$lib -name "*.32.a" -type f -exec ln -t src -nsf {} \;
+ln -sfn "${BSIM_COMPONENTS_PATH}" ./components
-# Copy all .32.a files
-find $BSIM_OUT_PATH/lib/$lib -name "*.32.a" -type f -exec cp -t src -f {} \;
+mkdir -p ./src/
+cp "${BSIM_OUT_PATH}"/lib/*.32.a ./src/
# XXX: Workaround for bad linking by newt. Sometimes newt will link
# nrf weak functions from nrf_hal_originals.o instead of their BabbleSim
# replacements inside libNRF52_hw_models.32.a. But as long as the other
# weak functions, that do not have their replacements, are not used,
# we can just remove the file from the .a library here.
-ar d src/libNRF52_hw_models.32.a nrf_hal_originals.o
+ar d ./src/libNRF52_hw_models.32.a nrf_hal_originals.o
diff --git a/babblesim/nrfx/scripts/link_nrfx.sh b/babblesim/sdk/scripts/link_nrfx.sh
similarity index 89%
rename from babblesim/nrfx/scripts/link_nrfx.sh
rename to babblesim/sdk/scripts/link_nrfx.sh
index 2b59847..6bc894e 100755
--- a/babblesim/nrfx/scripts/link_nrfx.sh
+++ b/babblesim/sdk/scripts/link_nrfx.sh
@@ -18,7 +18,4 @@
# under the License.
#
-mkdir -p ./src/
-for f in nrfx.h drivers hal mdk; do
- ln -sfn ${NRFX_BASE}/${f} ./src/${f}
-done
\ No newline at end of file
+ln -sfn ${NRFX_BASE} ./nrfx