← Back to ratslair.com
aboutsummaryrefslogtreecommitdiff
path: root/LIDAR/mak_common.inc
diff options
context:
space:
mode:
authorEdvin <[email protected]>2025-04-10 11:35:25 +0200
committerEdvin <[email protected]>2025-04-10 11:35:25 +0200
commitdcd2dd87ce8034a46e4150a89dc69f6ba1a22d8d (patch)
treebce00ff5029550f3bde1e83542d688dc3188e256 /LIDAR/mak_common.inc
parent1a837cbe411b4522582d323454a03ef02e9dd292 (diff)
Implemented code for Slamtec rplidar C1
Diffstat (limited to 'LIDAR/mak_common.inc')
-rw-r--r--LIDAR/mak_common.inc95
1 files changed, 95 insertions, 0 deletions
diff --git a/LIDAR/mak_common.inc b/LIDAR/mak_common.inc
new file mode 100644
index 0000000..0b63e8d
--- /dev/null
+++ b/LIDAR/mak_common.inc
@@ -0,0 +1,95 @@
+#/*
+# * RPLIDAR SDK
+# *
+# * Copyright (c) 2009 - 2014 RoboPeak Team
+# * http://www.robopeak.com
+# * Copyright (c) 2014 - 2018 Shanghai Slamtec Co., Ltd.
+# * http://www.slamtec.com
+# *
+# */
+#/*
+# * Redistribution and use in source and binary forms, with or without
+# * modification, are permitted provided that the following conditions are met:
+# *
+# * 1. Redistributions of source code must retain the above copyright notice,
+# * this list of conditions and the following disclaimer.
+# *
+# * 2. Redistributions in binary form must reproduce the above copyright notice,
+# * this list of conditions and the following disclaimer in the documentation
+# * and/or other materials provided with the distribution.
+# *
+# * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+# * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+# * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+# * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+# * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# *
+# */
+
+# Common Generation Law for rplidar sdk Building
+#
+#
+#
+
+.PHONY: make_subs build_sdk build_app clean_sdk clean_app
+
+make_subs:
+ @for subdir in $(MAKE_TARGETS) ; do $(MAKE) -C $$subdir $(MAKECMDGOALS) || exit 1; done
+
+# Define all object files.
+
+_CSRC = $(filter-out %*.c,$(CSRC))
+_CXXSRC = $(filter-out %*.cpp,$(CXXSRC))
+_ASRC = $(filter-out %*.S,$(ASRC))
+
+OBJ += $(patsubst %.c, $(TARGET_OBJ_ROOT)/%.o, $(_CSRC))
+OBJ += $(patsubst %.cpp, $(TARGET_OBJ_ROOT)/%.o, $(_CXXSRC))
+OBJ += $(patsubst %.S, $(TARGET_OBJ_ROOT)/%.o, $(_ASRC))
+
+build_sdk: $(SDK_TARGET)
+
+clean_sdk:
+ $(RMDIR) $(TARGET_OBJ_ROOT)
+ $(RM) $(SDK_TARGET)
+
+build_app: $(APP_TARGET)
+
+clean_app:
+ $(RMDIR) $(TARGET_OBJ_ROOT)
+ $(RM) $(APP_TARGET)
+
+$(SDK_TARGET): $(OBJ) $(EXTRA_OBJ)
+ $(MKDIR) `dirname $@`
+ @for i in $^; do echo " pack `basename $$i`->`basename $@`"; $(AR) rcs $@ $$i; done
+
+$(APP_TARGET): $(OBJ) $(EXTRA_OBJ) $(SDK_TARGET)
+ @$(MKDIR) `dirname $@`
+ @echo " LD $@"
+ $(CMD_HIDE)$(CC) $(ALL_CXXFLAGS) -o $@ $^ $(LDFLAGS)
+
+
+#
+# Compile: create object files from C++ source files.
+$(TARGET_OBJ_ROOT)/%.o: %.cpp
+ @$(MKDIR) `dirname $@`
+ @echo " CXX $<"
+ $(CMD_HIDE)$(CXX) -c $(ALL_CXXFLAGS) $< -o $@
+
+# Compile: create object files from C source files.
+$(TARGET_OBJ_ROOT)/%.o: %.c
+ @$(MKDIR) `dirname $@`
+ @echo " CC $<"
+ $(CMD_HIDE)$(CC) -c $(ALL_CFLAGS) $< -o $@
+
+# Assemble: create object files from assembler source files.
+$(TARGET_OBJ_ROOT)/%.o: %.S
+ @$(MKDIR) `dirname $@`
+ @echo " AS $<"
+ $(CMD_HIDE)$(CC) -c $(ALL_ASFLAGS) $< -o $@
+