This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx-apps.git

commit cf4847c4fea11818ed5787840ed95948daa054e4
Author: shizhenghui <[email protected]>
AuthorDate: Fri Aug 23 18:28:37 2024 +0800

    libmad: Add download libmad.zip to CMakeLists.txt
    
    Signed-off-by: shizhenghui <[email protected]>
---
 audioutils/libmad/CMakeLists.txt | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/audioutils/libmad/CMakeLists.txt b/audioutils/libmad/CMakeLists.txt
index 51b45bc3d..eea7c972b 100644
--- a/audioutils/libmad/CMakeLists.txt
+++ b/audioutils/libmad/CMakeLists.txt
@@ -20,6 +20,29 @@
 
 if(CONFIG_AUDIOUTILS_LIBMAD)
 
+  # Download and unpack libmad if no libmad found
+  if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/libmad/configure)
+    set(VERSION "master")
+    set(LIBMAD_URL
+        "https://github.com/markjeee/libmad/archive/refs/heads/master.zip";)
+
+    file(DOWNLOAD ${LIBMAD_URL} ${CMAKE_CURRENT_SOURCE_DIR}/libmad.zip)
+    execute_process(
+      COMMAND ${CMAKE_COMMAND} -E tar -xf 
${CMAKE_CURRENT_SOURCE_DIR}/libmad.zip
+      WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
+    execute_process(
+      COMMAND
+        ${CMAKE_COMMAND} -E rename
+        ${CMAKE_CURRENT_SOURCE_DIR}/libmad-${VERSION}
+        ${CMAKE_CURRENT_SOURCE_DIR}/libmad)
+
+    add_custom_target(
+      distclean
+      COMMAND ${CMAKE_COMMAND} -E remove_directory
+              ${CMAKE_CURRENT_SOURCE_DIR}/libmad
+      COMMAND ${CMAKE_COMMAND} -E remove 
${CMAKE_CURRENT_SOURCE_DIR}/libmad.zip)
+  endif()
+
   nuttx_add_library(libmad STATIC)
 
   file(GLOB LIBMAD_SRCS libmad/*.c)

Reply via email to