RN rnmake  3.0.0
Arch.overo.mk
Go to the documentation of this file.
1 ################################################################################
2 #
3 # Arch/Arch.overo.mk
4 #
5 ifdef RNMAKE_DOXY
6 /*!
7 \file
8 
9 \brief RoadNarrows Make System architecture makefile.
10 
11 \par Architecture:
12 Angstrom Linux Texas Instruments Omap Overo 32-bit gumstix processors.
13 
14 \par Build Host:
15 Cross-compile Open Embedded tool chain.
16 
17 \par Tool-Chain:
18 arm-overo-linux-gnueabi-*
19 
20 \pkgsynopsis
21 RN Make System
22 
23 \pkgfile{Arch/Arch.overo.mk}
24 
25 \pkgauthor{Robin Knight,robin.knight@roadnarrows.com}
26 
27 \pkgcopyright{2009-2018,RoadNarrows LLC,http://www.roadnarrows.com}
28 
29 \license{MIT}
30 
31 \EulaBegin
32 \EulaEnd
33 
34 \cond RNMAKE_DOXY
35  */
36 endif
37 #
38 ################################################################################
39 
40 _ARCH_OVERO_MK = 1
41 
42 # This architecture (required)
43 RNMAKE_ARCH = overo
44 RNMAKE_ARCH_FQNAME = arm-overo-linux-gnueabi
45 
46 
47 #------------------------------------------------------------------------------
48 # Tool Chain
49 #------------------------------------------------------------------------------
50 
51 #
52 # OpenEmbedded
53 #
54 ifdef OVEROTOP
55  OE_TMP = $(OVEROTOP)/tmp
56 else
57  OE_TMP = /opt/pkg/overo-oe/tmp
58 endif
59 
60 # Architecture specific include directories
61 RNMAKE_ARCH_INCDIRS =
62 
63 # Architecture specific CPP, C, and C++ Flags
64 RNMAKE_ARCH_CPPFLAGS =
65 RNMAKE_ARCH_CFLAGS =
66 RNMAKE_ARCH_CXXFLAGS =
67 
68 # Cross compiler tool chain prefix
69 CROSS_COMPILE = arm-angstrom-linux-gnueabi-
70 
71 # Build Support Commands
72 AR = $(CROSS_COMPILE)ar
73 RANLIB = $(CROSS_COMPILE)ranlib
74 STRIP_LIB = $(CROSS_COMPILE)strip --strip-debug
75 STRIP_EXE = $(CROSS_COMPILE)strip --strip-all
76 
77 
78 #------------------------------------------------------------------------------
79 # C Compiler and Options
80 #------------------------------------------------------------------------------
81 CC = $(CROSS_COMPILE)gcc
82 CFLAGS_CODEGEN = -fPIC
83 CFLAGS_DEBUG = -g
84 CFLAGS_OPTIMIZE = -O2
85 CFLAGS_WARNING = -Wall -Wno-implicit-int
86 CFLAGS_CPP_ONLY = -E
87 CFLAGS_DEPS_ONLY = -M
88 CFLAGS = $(CFLAGS_CODEGEN) \
89  $(CFLAGS_DEBUG) \
90  $(CFLAGS_OPTIMIZE) \
91  $(CFLAGS_WARNING)
92 
93 # Make C/CXX Dependencies Command
94 RNMAKE_MAKEDEPS = $(CC) $(CFLAGS_DEPS_ONLY)
95 
96 
97 #------------------------------------------------------------------------------
98 # C++ Compiler and Options
99 #------------------------------------------------------------------------------
100 CXX = $(CROSS_COMPILE)g++
101 CFLAGS_CODEGEN = -fPIC
102 CXXFLAGS_DEBUG = -g
103 CXXFLAGS_OPTIMIZE = -O2
104 CXXFLAGS_CPP_ONLY = -E
105 CXXFLAGS = $(CFLAGS_CODEGEN) \
106  $(CXXFLAGS_DEBUG) \
107  $(CXXFLAGS_OPTIMIZE) \
108  $(CXXFLAGS_WARNING)
109 
110 
111 #------------------------------------------------------------------------------
112 # Linker and Options
113 #------------------------------------------------------------------------------
114 LD_CC = $(CC)
115 LD_CXX = $(CXX)
116 LD = $(LD_CC)
117 LDFLAGS = $(COMMON_LDFLAGS) # -Wl,--export-dynamic
118 LD_LIBPATHS =
119 LD_LIBS =
120 
121 
122 #------------------------------------------------------------------------------
123 # Library Archiver/Linker and Options
124 #------------------------------------------------------------------------------
125 
126 # Static Libs
127 STLIB_LD = ${AR} cr
128 STLIB_PREFIX = lib
129 STLIB_SUFFIX = .a
130 
131 # Shared Libs
132 SHLIB_LD = $(CC) -shared
133 SHLIB_PREFIX = lib
134 SHLIB_SUFFIX = .so
135 SHLIB_LD_EXTRAS =
136 SHLIB_LD_FLAGS = $(COMMON_LDFLAGS)
137 SHLIB_LD_LIBS = ${LIBS}
138 SHLIB_CFLAGS = -fPIC
139 
140 # Dynamically Linked Libraries
141 DLLIB_LD = $(CC) -shared
142 DLLIB_PREFIX = lib
143 DLLIB_SUFFIX = .so
144 DLLIB_LD_NOSTART = -nostartfiles
145 DLLIB_LD_EXTRAS =
146 DLLIB_LD_FLAGS = $(COMMON_LDFLAGS)
147 DLLIB_LD_LIBS = ${LIBS}
148 DLLIB_CFLAGS = -fPIC
149 DLLIB_APP_CFLAGS = -rdynamic -fPIC
150 DLLIB = dl
151 
152 
153 #------------------------------------------------------------------------------
154 # System and Optional Packages
155 #------------------------------------------------------------------------------
156 
157 # Key directories
158 RNMAKE_SYS_PREFIX = $(OE_TMP)/sysroots/armv7a-angstrom-linux-gnueabi/usr
159 RNMAKE_OPT_PREFIX = /opt/xinstall/$(RNMAKE_ARCH)
160 RNMAKE_SYS_ARCH_LIBDIR = $(RNMAKE_SYS_PREFIX)/lib
161 RNMAKE_SYSFS = /sys
162 
163 # Python
164 RNMAKE_PYTHON_ENABLED = n
165 
166 # SWIG - Simplified Wrapper and Interface Generator command
167 RNMAKE_SWIG_ENABLED = y
168 SWIG_CFLAGS = $(CFLAGS_CODEGEN) \
169  -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions
170 SWIG_INCLUDES =
171 SWIG_LDFLAGS =
172 
173 # OpenCV
174 RNMAKE_OPENCV_ENABLED = y
175 OPENCV_COM_LIBS = opencv_core opencv_imgproc opencv_highgui
176 
177 # PCL
178 RNMAKE_PCL_ENABLED = y
179 PCL_VER = 1.7
180 PCL_INCDIR = $(RNMAKE_SYS_PREFIX)/include/pcl-$(PCL_VER)
181 ONI_INCDIR = $(RNMAKE_SYS_PREFIX)/include/ni
182 
183 # GTK (and related)
184 RNMAKE_GTK_ENABLED = y
185 GTK_VER = 2.0
186 GDK_VER = 2.0
187 PANGO_VER = 1.0
188 ATK_VER = 1.0
189 GTK_INCDIR = $(RNMAKE_SYS_PREFIX)/include/gtk-$(GTK_VER)
190 PANGO_INCDIR = $(RNMAKE_SYS_PREFIX)/include/pango-$(PANGO_VER)
191 CAIRO_INCDIR = $(RNMAKE_SYS_PREFIX)/include/cairo
192 ATK_INCDIR = $(RNMAKE_SYS_PREFIX)/include/atk-$(ATK_VER)
193 GDK_PIXBUF_INCDIR = $(RNMAKE_SYS_PREFIX)/include/gdk-pixbuf-$(GDK_VER)
194 GTK_LIB_INCDIR = $(RNMAKE_SYS_ARCH_LIBDIR)/gtk-$(GTK_VER)/include
195 GTK_LIB = gtk-x11-$(GTK_VER)
196 GDK_LIB = gdk-x11-$(GDK_VER)
197 GDK_PIXBUF_LIB = gdk_pixbuf-$(GDK_VER)
198 ATK_LIB = atk-$(ATK_VER)
199 PANGO_LIBS = pango-$(PANGO_VER) \
200  pangoft2-$(PANGO_VER) \
201  pangocairo-$(PANGO_VER)
202 CAIRO_LIB = cairo
203 FONT_LIBS = freetype fontconfig
204 GOBJ_LIBS = gobject-2.0 gmodule-2.0 gthread-2.0 gio-2.0 rt
205 
206 # GStreamer
207 RNMAKE_GST_ENABLED = y
208 GST_VER = 0.10
209 GST = gstreamer-$(GST_VER)
210 GST_INCDIR = $(RNMAKE_SYS_PREFIX)/include/$(GST)
211 GST_LIB_INCDIR = $(RNMAKE_SYS_ARCH_LIBDIR)/$(GST)/include
212 GST_LIB_IF = gstinterfaces-$(GST_VER)
213 
214 # GLib
215 RNMAKE_GLIB_ENABLED = y
216 GLIB_VER = 2.0
217 GLIB_INCDIR = $(RNMAKE_SYS_PREFIX)/include/glib-$(GLIB_VER)
218 GLIB_LIB_INCDIR = $(RNMAKE_SYS_ARCH_LIBDIR)/glib-$(GLIB_VER)/include
219 GLIB_LIB = glib-$(GLIB_VER)
220 
221 # XML
222 LIBXML2_INCDIR = $(RNMAKE_SYS_PREFIX)/include/libxml2
223 
224 # Posix Thread Library:
225 PTHREADLIB = -lpthread
226 PTHREADLIB_INCPATH =
227 PTHREADLIB_LIBPATH =
228 PTHREADLIB_CPPFLAGS =
229 
230 # Jpeg
231 JPEGINCPATH =
232 JPEGLIBPATH =
233 JPEGLIB = -ljpeg
234 
235 ifdef RNMAKE_DOXY
236 /*! \endcond RNMAKE_DOXY */
237 endif