Laelaps  2.3.5
RoadNarrows Robotics Small Outdoor Mobile Robot Project
Makefile
Go to the documentation of this file.
1 ################################################################################
2 #
3 # ./Makefile
4 #
5 ifdef RNMAKE_DOXY
6 /*!
7 \file
8 
9 \brief The \h_laelaps package top-level makefile.
10 
11 RN Make System Specific Makefile
12 
13 \pkgsynopsis
14 RoadNarrows Robotics \h_laelaps Small Mobile Robot Package
15 
16 \pkgfile{Makefile}
17 
18 \pkgauthor{Robin Knight,robin.knight@roadnarrows.com}
19 
20 \pkgcopyright{2015-2018,RoadNarrows LLC,http://www.roadnarrows.com}
21 
22 \license{MIT}
23 
24 \EulaBegin
25 \EulaEnd
26 
27  * \cond RNMAKE_DOXY
28  */
29 endif
30 #
31 ################################################################################
32 
33 #------------------------------------------------------------------------------
34 # Required
35 
36 # Package Root Directory
37 RNMAKE_PKG_ROOT = .
38 
39 # Bootstrap package within RN Make System
40 include $(RNMAKE_PKG_ROOT)/make/Bootstrap.mk
41 
42 #------------------------------------------------------------------------------
43 # Subdirectories
44 
45 RNMAKE_SUBDIRS = sw
46 
47 #------------------------------------------------------------------------------
48 # Interface Headers
49 
50 #
51 # Distribution Header List Tags
52 #
53 # List of tags to lists of header files slated to be distributed and installed.
54 #
55 RNMAKE_DIST_HDRS = Laelaps
56 
57 #
58 # Distribution Headers
59 #
60 # Format: <tag>.HDRS.H = [<subdirs>/]<hdr>.h ...
61 #
62 # Note: Any header file that requires distribution is expected to be in
63 # $(topdir)/include. Otherwise, is it really a deliverable header?
64 #
65 $(RNMAKE_DIST_HDRS).HDRS.H = $(shell cd include; ls Laelaps/*.h)
66 
67 
68 #------------------------------------------------------------------------------
69 # Documentation
70 
71 # Doxygen Configuration File
72 RNMAKE_DOXY_CONF_FILE = $(RNMAKE_PKG_ROOT)/make/doxy.conf
73 
74 
75 #------------------------------------------------------------------------------
76 # Extras
77 
78 EXTRA_TGT_ALL_POST = all-post
79 
80 # Odroid Ubuntu versions of Laelaps
81 ETC_PROF_D_LAE.odroid = share/etc/profile.d/laelaps_odroid.sh
82 ETC_FILES.odroid = share/etc/init.d/*
83 
84 # profile.d source and destination shell script
85 ETC_PROF_D_LAE_SRC = $(ETC_PROF_D_LAE.$(RNMAKE_ARCH))
86 ETC_PROF_D_LAE_DST = $(DISTDIR_ETC)/profile.d/laelaps.sh
87 
88 # On-target and off-target common etc files
89 ETC_FILES = share/etc/laelaps/*.conf \
90  share/etc/laelaps/*.xml \
91  share/etc/ld.so.conf.d/*.conf \
92  share/etc/udev/rules.d/*.rules \
93  etc/udev/rules.d/*.rules
94 
95 LIB_FILES = share/lib/cmake/rnr/rnr-laelaps-config.cmake
96 
97 PKGDIR_SHARE = $(RNMAKE_PKG_ROOT)/share
98 
99 .PHONY: all-post
100 all-post: show-banner cp-etc-files cp-lib-files cp-share-files
101 
102 .PHONY: show-banner
103 show-banner:
104  $(call printDirBanner,,all-post)
105  @printf "Pre-install Configuration\n"
106 
107 .PHONY: cp-etc-files
108 cp-etc-files:
109  $(call printGoalDesc,$(@),Copying etc files to $(DISTDIR_ETC))
110  $(call copySrcDirRel,$(ETC_FILES) $(ETC_FILES.$(RNMAKE_ARCH)),$(DISTDIR_ETC))
111  $(if $(ETC_PROF_D_LAE_SRC),\
112  $(call copySrcDst,$(ETC_PROF_D_LAE_SRC),$(ETC_PROF_D_LAE_DST)),)
113 
114 .PHONY: cp-lib-files
115 cp-lib-files:
116  $(call printGoalDesc,$(@),Copying extra lib files to $(DISTDIR_LIB))
117  $(call copySrcDirRel,$(LIB_FILES),$(DISTDIR_LIB))
118 
119 .PHONY: cp-share-files
120 cp-share-files:
121  $(call printGoalDesc,$(@),Copying share directory to $(DISTDIR_SHARE))
122  @$(CP_R) $(PKGDIR_SHARE)/* $(DISTDIR_SHARE)
123  @find $(DISTDIR_SHARE) -name '*.svn' -print | xargs rm -fr
124 
125 
126 #------------------------------------------------------------------------------
127 # Include RNMAKE rules makefile(s)
128 
129 # include top-level rules
130 include $(RNMAKE_ROOT)/Rules.mk
131 
132 # include extras
133 include $(RNMAKE_ROOT)/Extras.mk
134 
135 
136 ifdef RNMAKE_DOXY
137 /*! \endcond RNMAKE_DOXY */
138 endif
Laelaps client python modules.
Definition: __init__.py:1