Subject:
Re: [nanogui] Nano-X library size
From:
Junior ####@####.####
Date:
15 Jan 2008 14:58:33 -0000
Message-Id: <55B205FC558.000001D7ejr@inbox.com>
I could remember it being around 300K but it caught my attention yesterday as very unusual.
I have no debugging enabled. Infact below is my config file.
I also have no demos and I tried without a few of the libraries, just fnt support.
The font files are about 128K. I'm doing what I've always done unless I edit something
I forgot about. I'm building in scratchbox but I've always done that so I don't think that should
matter.
I left off the mouse driver and below...
####################################################################
ARCH = LINUX-NATIVE
BIGENDIAN = N
NATIVETOOLSPREFIX =
ARMTOOLSPREFIX = arm-linux-
MIPSTOOLSPREFIX = mipsel-linux-
POWERPCTOOLSPREFIX = powerpc-linux-
SHTOOLSPREFIX = sh-linux-gnu
RTEMSTOOLSPREFIX = i386-rtemself-
####################################################################
#
# Compiling options
#
####################################################################
OPTIMIZE = Y
DEBUG = N
VERBOSE = N
THREADSAFE = Y
GPROF = N
####################################################################
#
# Libraries to build: microwin, nano-X, nanowidget, object frameworks
#
####################################################################
MICROWIN = N
NANOX = Y
SHAREDLIBS = Y
OBJFRAMEWORK = N
####################################################################
#
# Demos to build
#MICROWINDEMO = N
NANOXDEMO = N
####################################################################
#
# Applications to build
#
####################################################################
NANOWM = N
####################################################################
#
# The pixeltype of the native hardware or underlying graphics library.
# This definition defines the PIXELVAL to be 32, 16 or 8 bits wide.
# If using Linux framebuffer, set to MWPF_TRUECOLOR0888, and use fbset.
# It also enables GdArea/GrArea for this particular pixel packing format.
#
# define MWPF_PALETTE /* pixel is packed 8 bits 1, 4 or 8 pal index*/
# define MWPF_TRUECOLOR8888 /* pixel is packed 32 bits 8/8/8/8 truecolor w/alpha*/
# define MWPF_TRUECOLOR0888 /* pixel is packed 32 bits 8/8/8 truecolor*/
# define MWPF_TRUECOLOR888 /* pixel is packed 24 bits 8/8/8 truecolor*/
# define MWPF_TRUECOLOR565 /* pixel is packed 16 bits 5/6/5 truecolor*/
# define MWPF_TRUECOLOR555 /* pixel is packed 16 bits 5/5/5 truecolor*/
# define MWPF_TRUECOLOR332 /* pixel is packed 8 bits 3/3/2 truecolor*/
#
####################################################################
SCREEN_PIXTYPE = MWPF_TRUECOLOR555
####################################################################
#
# NanoX: Put Y to the following line to link the nano-X application
# with the server. This is required for ELKS, if no network is present,
# or for speed or debugging. This affects the nano-X server only.
#
####################################################################
LINK_APP_INTO_SERVER = Y
####################################################################
# Shared memory support for Nano-X client/server protocol speedup
####################################################################
HAVE_SHAREDMEM_SUPPORT = Y
####################################################################
#
# File I/O support
# Supporting either below drags in libc stdio, which may not be wanted
#
####################################################################
HAVE_FILEIO = Y
####################################################################
# BMP, GIF reading support
####################################################################
HAVE_BMP_SUPPORT = Y
HAVE_GIF_SUPPORT = N
HAVE_PNM_SUPPORT = N
HAVE_XPM_SUPPORT = N
####################################################################
# JPEG support through a customize jpeg decoder
####################################################################
HAVE_CJPEG_SUPPORT = N
INCCJPEG = /include
####################################################################
# JPEG support through libjpeg, see README.txt in contrib/jpeg
####################################################################
HAVE_JPEG_SUPPORT = Y
INCJPEG = /include
LIBJPEG = /lib/libjpeg.so
####################################################################
# PNG support via libpng and libz
####################################################################
HAVE_PNG_SUPPORT = N
INCPNG = .
LIBPNG = /usr/lib/libpng.a
INCZ = .
LIBZ = /lib/libz.a
####################################################################
# TIFF support through libtiff
####################################################################
HAVE_TIFF_SUPPORT = N
INCTIFF = .
LIBTIFF = /usr/lib/libtiff.a
####################################################################
# TSLIB support through libts,
####################################################################
HAVE_TSLIB_SUPPORT = Y
INCTS = /include
LIBTS = /lib/libts.so
####################################################################
# native .fnt loadable font support
####################################################################
HAVE_FNT_SUPPORT = Y
HAVE_FNTGZ_SUPPORT = Y
FNT_FONT_DIR = "/fonts/bdf"
####################################################################
# T1 adobe type1 font support thru t1lib
####################################################################
HAVE_T1LIB_SUPPORT = N
INCT1LIB = /include
LIBT1LIB = /lib/libt1.so
####################################################################
# TrueType font support thru FreeType 1.x
####################################################################
HAVE_FREETYPE_SUPPORT = N
INCFTLIB = /include/freetype1
LIBFTLIB = /lib/libttf.so
FREETYPE_FONT_DIR = "/fonts/truetype"
# might want to change this to /etc/fonts/truetype
####################################################################
# Support for many kinds of font thru FreeType 2.x
# Must also set FREETYPE_FONT_DIR in the Freetype 1.x section
####################################################################
HAVE_FREETYPE_2_SUPPORT = N
INCFT2LIB = /include/freetype2
LIBFT2LIB = /lib/libfreetype.so
####################################################################
# PCF font support
# Selecting HAVE_PCFGZ_SUPPORT will allow you to directly read
# .pcf.gz files, but it will add libz to the size of the server
####################################################################
HAVE_PCF_SUPPORT = Y
HAVE_PCFGZ_SUPPORT = Y
PCF_FONT_DIR = "/fonts/pcf"
####################################################################
# Chinese Han Zi Ku loadable font support
####################################################################
HAVE_HZK_SUPPORT = N
HZK_FONT_DIR = "fonts/chinese"
####################################################################
# Chinese BIG5 compiled in font support (big5font.c)
####################################################################
HAVE_BIG5_SUPPORT = N
####################################################################
# Chinese GB2312 compiled in font support (gb2312font.c)
####################################################################
HAVE_GB2312_SUPPORT = N
####################################################################
# Japanese JISX0213 compiled in font support (jisx0213-12x12.c)
####################################################################
HAVE_JISX0213_SUPPORT = N
####################################################################
# Korean HANGUL font support (jo16x16.c)
####################################################################
HAVE_KSC5601_SUPPORT = N
####################################################################
# Japanese EUC-JP support using loadable MGL font
####################################################################
HAVE_EUCJP_SUPPORT = N
EUCJP_FONT_DIR = "fonts/japanese"
####################################################################
# Fribidi and shape/joining support for right to left rendering
####################################################################
HAVE_FRIBIDI_SUPPORT = N
HAVE_SHAPEJOINING_SUPPORT = N
INCFRIBIDI = $(TOP)/../../../include
LIBFRIBIDI = $(TOP)/../../../lib/libfribidi.a
####################################################################
# Generate screen driver interface only with no fonts or clipping
####################################################################
NOFONTSORCLIPPING = N
####################################################################
#
# Window move algorithms for Microwindows
# Change for tradeoff between cpu speed and looks
# ERASEMOVE repaints only backgrounds while window dragging, quicker.
# Otherwise an XOR redraw is used for window moves only after button up,
# quickest (should set for ELKS)
# UPDATEREGIONS paints in update clipping region only for better look and feel
#
####################################################################
ERASEMOVE = N
UPDATEREGIONS = N
####################################################################
#
# Link with Gray Palette (valid only for 4bpp modes)
#
####################################################################
GRAYPALETTE = N
####################################################################
#
# If the platform is running UNIX, Linux or RTEMS...
#
####################################################################
ifneq ($(ARCH), ELKS)
# X Window screen, mouse and kbd drivers
X11 = N
ifeq ($(X11), Y)
# startup screen width, height, (depth for palette mode only)
SCREEN_WIDTH = 640
SCREEN_HEIGHT = 480
SCREEN_DEPTH = 4
# You may want to turn this on for XFree86 4.x or if your backing store
# isn't functioning properly
USE_EXPOSURE = Y
else
# framebuffer screen driver (linear and/or vga 4 planes)
# set VTSWITCH to include virtual terminal switch code
# set FBREVERSE to reverse bit orders in 1,2,4 bpp
# set FBVGA=N for all systems without VGA hardware (for MIPS must=N)
FRAMEBUFFER = Y
FBVGA = N
VTSWITCH = Y
FBREVERSE = N
BGRPIXELFORMAT = Y
# set HAVETEXTMODE=Y for systems that can switch between text & graphics.
# On a graphics-only embedded system, such as Osprey and Embedded
# Planet boards, set HAVETEXTMODE=N
HAVETEXTMODE = Y
# svgalib screen driver
VGALIB = N
# direct VGA hardware access screen driver
HWVGA = N
> -----Original Message-----
> From: ####@####.####
> Sent: Tue, 15 Jan 2008 06:44:07 -0800
> To: ####@####.####
> Subject: Re: [nanogui] Nano-X library size
>
> Allen Yang wrote:
>> I disabled the demos when I compiled the package. The size is about half
>> of your 6M. I'm running on a coldfire target. I'm also using freetype
>> fonts which take more space. If you don't use freetype, the size can be
>> even smaller.
>>
>> I guess "129K on host (i386)" doesn't count the shared library size.
>>
>> Anyone has more comments?
>>
>
> ISTR that on my arm9 target the size, including nano-X and the library,
> was about 300K.
>
> I have no idea what you're building that would use 6M. Qt is smaller
> than that!
>
> --Yan
>
>> Regards,
>>
>> Allen Yang
>>
>>
>> -----Original Message-----
>> From: Junior ####@####.####
>> Sent: Tuesday, January 15, 2008 9:26 AM
>> To: Daniel Nyström
>> Cc: ####@####.####
>> Subject: Re: [nanogui] Nano-X library size
>>
>>
>>> -----Original Message-----
>>> From: ####@####.####
>>> Sent: Tue, 15 Jan 2008 09:47:05 +0100
>>> To: ####@####.####
>>> Subject: Re: [nanogui] Nano-X library size
>>>
>>> Mine is 129K on host (i386).
>>>
>>>
>>
>> What!? I'm on an ARM target and I would expect it to be pretty close to
>> yours
>> or even much smaller.
>> What could account for the difference? Does anyone have any ideas?
>>
>>
>>
>>
>>
>>> Junior wrote:
>>>
>>>> Hi,
>>>> I was wondering - maybe others have - why the nanox library is so
>>>> large?
>>>> With the basic config options the libnanoX.so is >= 6M bytes which is
>>>> pretty large compared to other gui library (well.. for embedded
>>>> devices
>>>> I mean :) ).
>>>> By the way, that's the stripped library and I'm using uClibc.
>>>>
>>>> Has anyone got it smaller or at least half the size? I
>>>>
>>>> Thanks,
>>>> --Jr
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ####@####.####
>>>> For additional commands, e-mail: ####@####.####
>>>>
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ####@####.####
>>> For additional commands, e-mail: ####@####.####
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ####@####.####
>> For additional commands, e-mail: ####@####.####
>>
>>
>>
>>
>>
>>
>> The information contained in this email and attachments to this email
>> are the proprietary and confidential property
>> of Nucomm, Inc. The information is provided in strict confidence and
>> shall not be reproduced, copied, or
>> used (partially or wholly) in any manner without prior, express written
>> authorization of Nucomm, Inc.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ####@####.####
>> For additional commands, e-mail: ####@####.####
>>
>>
>> !DSPAM:478cc60a99311188010046!
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ####@####.####
> For additional commands, e-mail: ####@####.####
____________________________________________________________
Receive Notifications of Incoming Messages
Easily monitor multiple email accounts & access them with a click.
Visit http://www.inbox.com/notifier and check it out!