011324b0c85497f61cc7d3bc00f6d9f0c3b99712
[fltk_mvc_template.git] / _template / packages / nanox / config_android_arm_sdl
1 ####################################################################
2 # config - Microwindows and Nano-X configuration file
3 #
4 # Set target architecture using ARCH= from options in Arch.rules
5 # Set drawing method: X11 or FRAMEBUFFER/MOUSE/KEYBOARD options
6 # Set SCREEN/MOUSE/KEYBOARD drivers (typically X11 or FB)
7 # Set various libraries to build or include and their locations
8 #
9 # See the src/Configs directory for pre-built config files.
10 # Edit this or copy one from src/Configs, and type "make clean; make"
11 ####################################################################
12
13 ####################################################################
14 #
15 # Target platform and compilation options
16 #
17 ####################################################################
18 ARCH                     = ANDROID
19 SHAREDLIBS               = N
20 SHAREDLINK               = N
21 #EXTRAFLAGS               = -Wno-unused-result -Wno-implicit-int
22 DEBUG                    = N
23 OPTIMIZE                 = Y
24 #OPTIMIZE                 = -O1
25 VERBOSE                  = Y
26 THREADSAFE               = N
27 PARALLEL                 = N
28
29 ####################################################################
30 # Screen Driver
31 # Set SCREEN=X11 for X11, SCREEN=FB for framebuffer drawing
32 # Screen size/depth for X11, FBE and non-dynamic framebuffer systems
33 ####################################################################
34 SCREEN                   = SDL
35 SDL2_INCLUDE     =../../../../../lib_include/android_arm
36 SDL2_LIB                 =../../../../../lib/android_arm
37 SDL2_SRC                 =../../../../packages/sdl2.0.9/SDL2-2.0.9
38 MOUSE                    =
39 KEYBOARD                 =
40 SCREEN_WIDTH             = 1080
41 SCREEN_HEIGHT            = 1776
42 X11HDRLOCATION           = $(MW_DIR_SRC)/nx11/X11-local
43 #EXTENGINELIBS            += -lSDL2
44
45 ####################################################################
46 # Android specific settings (these also allow compiling android)
47 # for different architectures + platform versions
48 ####################################################################
49 ANDROID_NDK_HOME        = /usr/lib/android-ndk
50 ANDROID_PLATFORM_VER    = android-23
51 ANDROID_ARCH            = arm
52 ANDROID_ARCH_VER        = armeabi-v7a
53 ANDROID_TOOLCHAIN_NAME  = arm-linux-androideabi-4.9
54 ANDROIDTOOLSPREFIX      = arm-linux-androideabi-
55
56 ####################################################################
57 #
58 # Libraries to build: microwin, nano-X, nxlib, engine
59 #
60 ####################################################################
61 MICROWIN                 = N
62 NANOX                    = Y
63 NX11                     = Y
64 ENGINE                   = Y
65 TINYWIDGETS              = N
66
67 ####################################################################
68 #
69 # Applications and demos to build
70 #
71 ####################################################################
72 FBEMULATOR               = N
73 MICROWINDEMO             = N
74 NANOXDEMO                = N
75 HAVE_VNCSERVER_SUPPORT   = N
76 VNCSERVER_PTHREADED      = N
77 LIBVNC                   = -lvncserver
78 INCVNC                   =
79
80 ####################################################################
81 # Mandatory settings to create android .apk files
82 ####################################################################
83 ANDROID_SDK_ROOT=/usr/lib/android-sdk
84 ANDROID_BUILD_TOOLS_VERSION=24.0.0
85 ANDROID_KEYSTORE_PATH=~/.android/debug.keystore
86 ANDROID_KEYSTORE_NAME=androiddebugkey
87 ANDROID_KEYSTORE_PW=android
88 JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
89
90 ####################################################################
91 # LINK_APP_INTO_SERVER links the nano-X server into the application,
92 # by building a libnano-X.{a,so} that runs standalone.
93 # Required if UNIX sockets aren't available, for debugging,
94 # and also used to support running X11 apps through NXLIB on X11.
95 # NANOWM links the window manager into the server.
96 ####################################################################
97 LINK_APP_INTO_SERVER     = Y
98 NANOWM                   = Y
99
100 ####################################################################
101 # Shared memory support for Nano-X client/server protocol speedup
102 ####################################################################
103 HAVE_SHAREDMEM_SUPPORT   = N
104
105 ####################################################################
106 # File I/O support
107 # Supporting either below drags in libc stdio, which may not be wanted
108 ####################################################################
109 HAVE_FILEIO              = Y
110
111 ####################################################################
112 # BMP, GIF reading support
113 ####################################################################
114 HAVE_BMP_SUPPORT         = Y
115 HAVE_GIF_SUPPORT         = Y
116 HAVE_PNM_SUPPORT         = Y
117 HAVE_XPM_SUPPORT         = Y
118
119 ####################################################################
120 # JPEG support through libjpeg, see README.txt in contrib/jpeg
121 ####################################################################
122 HAVE_JPEG_SUPPORT        = N
123 INCJPEG                  =
124 LIBJPEG                  = -ljpeg
125
126 ####################################################################
127 # PNG support via libpng and libz
128 ####################################################################
129 HAVE_PNG_SUPPORT         = N
130 INCPNG                   =
131 LIBPNG                   = -lpng
132 INCZ                     = .
133 LIBZ                     = -lz
134
135 ####################################################################
136 # TIFF support through libtiff
137 ####################################################################
138 HAVE_TIFF_SUPPORT        = N
139 INCTIFF                  =
140 LIBTIFF                  = -ltiff
141
142 ####################################################################
143 # PCF font support - .pcf/.pcf.gz loadable fonts
144 ####################################################################
145 HAVE_PCF_SUPPORT         = Y
146 HAVE_PCFGZ_SUPPORT       = Y
147 PCF_FONT_DIR             = "fonts/pcf"
148
149 ####################################################################
150 # Truetype fonts - .ttf and .otf loadable fonts thru Freetype 2.x
151 ####################################################################
152 HAVE_FREETYPE_2_SUPPORT  = Y
153 HAVE_HARFBUZZ_SUPPORT    = N
154 INCFT2LIB                = /usr/include
155 LIBFT2LIB                = -lfreetype
156 #LIBFT2LIB                += -lharfbuzz
157 FREETYPE_FONT_DIR        = "/system/fonts"
158
159 ####################################################################
160 # T1 adobe type1 fonts - .pfb/.afm loadable thru t1lib
161 # t1lib.config must be setup and in T1LIB_FONT_DIR
162 ####################################################################
163 HAVE_T1LIB_SUPPORT       = N
164 T1LIB_FONT_DIR           = "fonts/type1"
165 INCT1LIB                 =
166 LIBT1LIB                 = -lt1
167
168 ####################################################################
169 # FNT font support - .fnt/.fnt.gz loadable fonts (native bdf-converted)
170 ####################################################################
171 HAVE_FNT_SUPPORT         = Y
172 HAVE_FNTGZ_SUPPORT       = Y
173 FNT_FONT_DIR             = "fonts/fnt"
174
175 ####################################################################
176 # Specialized font support
177 #
178 # Chinese Han Zi Ku HZK loadable font support
179 # DBCS Chinese BIG5 compiled in font support (big5font.c)
180 # DBCS Chinese GB2312 compiled in font support (gb2312font.c)
181 # Chinese HBF font support (genfont.hbf.c, hbf.c)
182 # DBCS Japanese JISX0213 compiled in font support (jisx0213-12x12.c)
183 # Japanese EUC-JP support using loadable MGL font
184 # DBCS Korean HANGUL font support (jo16x16.c)
185 # Fribidi and shape/joining support for right to left rendering
186 ####################################################################
187 HAVE_HZK_SUPPORT         = N
188 HZK_FONT_DIR             = "fonts/chinese"
189 HAVE_BIG5_SUPPORT        = N
190 HAVE_GB2312_SUPPORT      = N
191 HAVE_HBF_SUPPORT         = N
192 HAVE_JISX0213_SUPPORT    = N
193 HAVE_EUCJP_SUPPORT       = N
194 EUCJP_FONT_DIR           = "fonts/japanese"
195 HAVE_KSC5601_SUPPORT     = N
196 HAVE_FRIBIDI_SUPPORT     = N
197 HAVE_SHAPEJOINING_SUPPORT = N
198 INCFRIBIDI               =
199 LIBFRIBIDI               = -lfribidi
200
201 ####################################################################
202 # Misc Options
203 ####################################################################
204
205 # Window move algorithms for Microwindows
206 # Change for tradeoff between cpu speed and looks
207 # ERASEMOVE (nanowm) repaints only backgrounds while window dragging
208 # Otherwise an XOR redraw is used for window moves only after button up
209 # UPDATEREGIONS (win32 api only)paints in update clipping region only
210 ERASEMOVE                = Y
211 UPDATEREGIONS            = Y
212
213 # Generate screen driver interface only with no fonts or clipping
214 NOFONTS                  = N
215 NOCLIPPING               = N
216
217 # set USE_EXPOSURE for X11 on XFree86 4.x or if backing store not working
218 # set VTSWITCH to include virtual terminal switch code
219 # set FBREVERSE to reverse bit orders in 1,2,4 bpp
220 # set GRAYPALETTE to link with Gray Palette (valid only for 4bpp modes)
221 # set HAVETEXTMODE=Y for systems that can switch between text & graphics.
222 USE_EXPOSURE             = Y
223 VTSWITCH                 = N
224 FBREVERSE                = N
225 GRAYPALETTE              = N
226 HAVETEXTMODE             = N
227
228 ####################################################################
229 # Screen pixel format
230 # If using Linux framebuffer, set to MWPF_TRUECOLORARGB, and use fbset.
231 # When running X11 or FBE, this sets the pixel emulation at runtime.
232 #
233 # On Linux or when running the standard framebuffer subdrivers,
234 # the runtime framebuffer BPP (bits per pixel) is used to select 
235 # the runtime screen subdriver.  However, the format of the pixel
236 # itself must be selected at compile time, which sets macros used
237 # for MWCOLORVAL color conversions and conversion blit byte order.
238 # This also sets sizeof(MWPIXELVAL) for optimizing buffers sizes
239 # in GrArea/GrReadArea.
240 #
241 # define MWPF_PALETTE       /* pixel is packed 8 bits 1, 4 or 8 pal index*/
242 # define MWPF_TRUECOLORARGB /* pixel is packed 32 bits byte order |B|G|R|A|*/
243 # define MWPF_TRUECOLORABGR /* pixel is packed 32 bits byte order |R|G|B|A|*/
244 # define MWPF_TRUECOLORRGB  /* pixel is packed 24 bits byte order |B|G|R|*/
245 # define MWPF_TRUECOLOR565  /* pixel is packed 16 bits little endian RGB565*/
246 # define MWPF_TRUECOLOR555  /* pixel is packed 16 bits little endian RGB555*/
247 # define MWPF_TRUECOLOR332  /* pixel is packed 8 bits RGB 332*/
248 # define MWPF_TRUECOLOR233  /* pixel is packed 8 bits BGR 332*/
249 # SCREEN_DEPTH is bits per pixel, only used with MWPF_PALETTE palette mode
250 ####################################################################
251 SCREEN_PIXTYPE           = MWPF_TRUECOLORARGB
252 #SCREEN_PIXTYPE           = MWPF_TRUECOLORABGR 
253 #SCREEN_PIXTYPE           = MWPF_TRUECOLOR565
254 SCREEN_DEPTH             = 8
255
256 ####################################################################
257 # Screen drivers
258 # SCREEN=X11            X11
259 # SCREEN=FB                     linux framebuffer
260 # SCREEN=FBE            framebuffer emulator
261 # SCREEN=SDL            SDL v2
262 # SCREEN=ALLEGRO4
263 # SCREEN=ALLEGRO5
264 ####################################################################
265
266 ####################################################################
267 # Mouse drivers
268 # MOUSE=NOMOUSE         no mouse driver
269 # MOUSE=GPMMOUSE        gpm mouse
270 # MOUSE=SERMOUSE        serial Microsoft, PC, Logitech, PS/2 mice (/dev/psaux)
271 # MOUSE=DEVMICEMOUSE Use Linux /dev/input/mice driver
272 # MOUSE=TSLIBMOUSE      Use tslib (/dev/input/event0)
273 ####################################################################
274
275 ####################################################################
276 # Keyboard drivers
277 # KEYBOARD=NOKBD                no keyboard driver
278 # KEYBOARD=TTYKBD               tty keyboard
279 # KEYBOARD=SCANKBD              scanmode keyboard
280 # KEYBOARD=2NDKBD               two keyboards support
281 ####################################################################