Skip to content

Commit

Permalink
cmake: port stm32f0l0g0
Browse files Browse the repository at this point in the history
  • Loading branch information
raiden00pl authored and xiaoxiang781216 committed Jul 24, 2023
1 parent 44b5eb3 commit dffb472
Show file tree
Hide file tree
Showing 22 changed files with 832 additions and 0 deletions.
42 changes: 42 additions & 0 deletions arch/arm/src/armv6-m/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# ##############################################################################
# arch/arm/src/armv6-m/CMakeLists.txt
#
# 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.
#
# ##############################################################################

set(SRCS
arm_exception.S
arm_saveusercontext.S
arm_doirq.c
arm_hardfault.c
arm_initialstate.c
arm_schedulesigaction.c
arm_sigdeliver.c
arm_svcall.c
arm_systemreset.c
arm_tcbinfo.c
arm_vectors.c)

if(CONFIG_DEBUG_FEATURES)
list(APPEND SRCS arm_dumpnvic.c)
endif()

if(CONFIG_ARCH_RAMVECTORS)
list(APPEND SRCS arm_ramvec_initialize.c arm_ramvec_attach.c)
endif()

target_sources(arch PRIVATE ${SRCS})
99 changes: 99 additions & 0 deletions arch/arm/src/stm32f0l0g0/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# ##############################################################################
# arch/arm/src/stm32f0l0g0/CMakeLists.txt
#
# 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.
#
# ##############################################################################

set(SRCS)

list(
APPEND
SRCS
stm32_start.c
stm32_gpio.c
stm32_exti_gpio.c
stm32_irq.c
stm32_lse.c
stm32_lowputc.c
stm32_serial.c
stm32_rcc.c)

if(CONFIG_STM32F0L0G0_DMA)
list(APPEND SRCS stm32_dma_v1.c)
endif()

if(CONFIG_STM32F0L0G0_PWR)
list(APPEND SRCS stm32_pwr.c)
endif()

if(NOT CONFIG_ARCH_IDLE_CUSTOM)
list(APPEND SRCS stm32_idle.c)
endif()

if(NOT CONFIG_SCHED_TICKLESS)
list(APPEND SRCS stm32_timerisr.c)
endif()

if(CONFIG_BUILD_PROTECTED)
list(APPEND SRCS stm32_userspace.c)
endif()

if(CONFIG_STM32F0L0G0_GPIOIRQ)
list(APPEND SRCS stm32_gpioint.c)
endif()

if(CONFIG_ARCH_IRQPRIO)
list(APPEND SRCS stm32_irqprio.c)
endif()

if(CONFIG_STM32F0L0G0_HAVE_HSI48)
list(APPEND SRCS stm32_hsi48.c)
endif()

if(CONFIG_STM32F0L0G0_USB)
list(APPEND SRCS stm32_usbdev.c)
endif()

if(CONFIG_STM32F0L0G0_I2C)
list(APPEND SRCS stm32_i2c.c)
endif()

if(CONFIG_STM32F0L0G0_SPI)
list(APPEND SRCS stm32_spi.c)
endif()

if(CONFIG_STM32F0L0G0_PWM)
list(APPEND SRCS stm32_pwm.c)
endif()

if(CONFIG_STM32F0L0G0_ADC)
list(APPEND SRCS stm32_adc.c)
endif()

if(CONFIG_STM32F0L0G0_AES)
list(APPEND SRCS stm32_aes.c)
endif()

if(CONFIG_STM32F0L0G0_RNG)
list(APPEND SRCS stm32_rng.c)
endif()

if(CONFIG_STM32F0L0G0_TIM)
list(APPEND SRCS stm32_tim.c stm32_tim_lowerhalf.c)
endif()

target_sources(arch PRIVATE ${SRCS})
21 changes: 21 additions & 0 deletions boards/arm/stm32f0l0g0/b-l072z-lrwan1/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/b-l072z-lrwan1/CMakeLists.txt
#
# 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.
#
# ##############################################################################

add_subdirectory(src)
55 changes: 55 additions & 0 deletions boards/arm/stm32f0l0g0/b-l072z-lrwan1/src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/b-l072z-lrwan1/src/CMakeLists.txt
#
# 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.
#
# ##############################################################################

set(SRCS stm32_boot.c stm32_bringup.c)

if(CONFIG_ARCH_LEDS)
list(APPEND SRCS stm32_autoleds.c)
else()
list(APPEND SRCS stm32_userleds.c)
endif()

if(CONFIG_ARCH_BUTTONS)
list(APPEND SRCS stm32_buttons.c)
endif()

if(CONFIG_STM32F0L0G0_SPI)
list(APPEND SRCS stm32_spi.c)
endif()

if(CONFIG_BOARDCTL)
list(APPEND SRCS stm32_appinit.c)
endif()

if(CONFIG_LPWAN_SX127X)
list(APPEND SRCS stm32_sx127x.c)
endif()

if(CONFIG_ADC)
list(APPEND SRCS stm32_adc.c)
endif()

if(CONFIG_LCD_SSD1306)
list(APPEND SRCS stm32_lcd_ssd1306.c)
endif()

target_sources(board PRIVATE ${SRCS})

set_property(GLOBAL PROPERTY LD_SCRIPT "${NUTTX_BOARD_DIR}/scripts/ld.script")
21 changes: 21 additions & 0 deletions boards/arm/stm32f0l0g0/nucleo-f072rb/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/nucleo-f072rb/CMakeLists.txt
#
# 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.
#
# ##############################################################################

add_subdirectory(src)
39 changes: 39 additions & 0 deletions boards/arm/stm32f0l0g0/nucleo-f072rb/src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/nucleo-f072rb/src/CMakeLists.txt
#
# 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.
#
# ##############################################################################

set(SRCS stm32_boot.c stm32_bringup.c)

if(CONFIG_ARCH_LEDS)
list(APPEND SRCS stm32_autoleds.c)
else()
list(APPEND SRCS stm32_userleds.c)
endif()

if(CONFIG_ARCH_BUTTONS)
list(APPEND SRCS stm32_buttons.c)
endif()

if(CONFIG_BOARDCTL)
list(APPEND SRCS stm32_appinit.c)
endif()

target_sources(board PRIVATE ${SRCS})

set_property(GLOBAL PROPERTY LD_SCRIPT "${NUTTX_BOARD_DIR}/scripts/flash.ld")
21 changes: 21 additions & 0 deletions boards/arm/stm32f0l0g0/nucleo-f091rc/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/nucleo-f091rc/CMakeLists.txt
#
# 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.
#
# ##############################################################################

add_subdirectory(src)
47 changes: 47 additions & 0 deletions boards/arm/stm32f0l0g0/nucleo-f091rc/src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/nucleo-f091rc/src/CMakeLists.txt
#
# 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.
#
# ##############################################################################

set(SRCS stm32_boot.c stm32_bringup.c)

if(CONFIG_ARCH_LEDS)
list(APPEND SRCS stm32_autoleds.c)
else()
list(APPEND SRCS stm32_userleds.c)
endif()

if(CONFIG_ARCH_BUTTONS)
list(APPEND SRCS stm32_buttons.c)
endif()

if(CONFIG_STM32F0L0G0_SPI)
list(APPEND SRCS stm32_spi.c)
endif()

if(CONFIG_BOARDCTL)
list(APPEND SRCS stm32_appinit.c)
endif()

if(CONFIG_LPWAN_SX127X)
list(APPEND SRCS stm32_sx127x.c)
endif()

target_sources(board PRIVATE ${SRCS})

set_property(GLOBAL PROPERTY LD_SCRIPT "${NUTTX_BOARD_DIR}/scripts/flash.ld")
21 changes: 21 additions & 0 deletions boards/arm/stm32f0l0g0/nucleo-g070rb/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# ##############################################################################
# boards/arm/stm32f0l0g0/nucleo-g070rb/CMakeLists.txt
#
# 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.
#
# ##############################################################################

add_subdirectory(src)
Loading

0 comments on commit dffb472

Please sign in to comment.