1 #############################################################
5 #############################################################
7 ifneq ($(strip $(BR2_PACKAGE_TINYX
)),y
)
8 ifeq ($(BR2_PACKAGE_XORG
),y
)
10 XORG_APPS
:=xlsfonts
/xlsfonts xmodmap
/xmodmap xinit
/startx \
11 xauth
/xauth xinit
/xinit xsetroot
/xsetroot xset
/xset \
12 mkfontscale
/mkfontscale mkfontdir
/mkfontdir \
13 setxkbmap
/setxkbmap
#xterm/xterm
15 XORG_LIBS
:= Xft Xrender Xaw Xmu Xt Xcursor Xrandr Xi Xinerama Xfixes \
16 SM ICE Xpm Xp Xext X11 Xmuu Xxf86misc fontenc xkbfile
19 #############################################################
20 # Stuff below this line shouldn't need changes.
21 # if you do change, look in rxvt & matchbox for the impact!
22 #############################################################
24 # Where resources are found.
26 XORG_SOURCE
:=X11R6.8
.2-src.
tar.bz2
27 XORG_SITE
:=http
://xorg.freedesktop.org
/X11R6.8
.2/src-single
/
29 XORG_DIR
:=$(BUILD_DIR
)/xc
30 XORG_LDIR
:=$(XORG_DIR
)/lib
31 XORG_PROGS
:=$(XORG_DIR
)/programs
32 TARGET_BINX
:=/usr
/X11R6
/bin
33 TARGET_LIBX
:=/usr
/X11R6
/lib
34 XORG_BINX
:=$(TARGET_DIR
)$(TARGET_BINX
)
35 XORG_LIBX
:=$(TARGET_DIR
)$(TARGET_LIBX
)
36 XORG_CF
:=$(XORG_DIR
)/config
/cf
/cross.def
37 XORG_HOST_DEF
:=$(XORG_DIR
)/config
/cf
/host.def
41 DEJAVU_SOURCE
=dejavu-ttf-
$(DEJAVU_VERSION
).
tar.bz2
43 DEJAVU_SITE
=http
://$(BR2_SOURCEFORGE_MIRROR
).dl.sourceforge.net
/sourceforge
/dejavu
44 DEJAVU_DIR
:=$(BUILD_DIR
)/dejavu-ttf-
$(DEJAVU_VERSION
)
46 # Install Xorg xserver
48 XORG_XSERVER
:=$(XORG_DIR
)/programs
/Xserver
/$(XSERVER_BINARY
)
49 TARGET_XSERVER
:=$(XORG_BINX
)/$(XSERVER_BINARY
)
51 # figure out Xorg's idea of corresponding architecture name
67 ifeq ($(BR2_mipsel
),y
)
70 ifeq ($(BR2_powerpc
),y
)
76 ifeq ($(BR2_x86_64
),y
)
80 $(DL_DIR
)/$(XORG_SOURCE
):
81 $(WGET
) -P
$(DL_DIR
) $(XORG_SITE
)/$(XORG_SOURCE
)
83 $(XORG_DIR
)/.unpacked
: $(DL_DIR
)/$(XORG_SOURCE
)
84 $(XORG_CAT
) $(DL_DIR
)/$(XORG_SOURCE
) |
tar -C
$(BUILD_DIR
) $(TAR_OPTIONS
) -
85 toolchain
/patch-kernel.sh
$(XORG_DIR
) package
/xorg
/ \
*.patch
86 touch
$(XORG_DIR
)/.unpacked
88 $(XORG_DIR
)/.configured
: $(XORG_DIR
)/.unpacked
89 $(SED
) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' $(XORG_HOST_DEF
)
90 $(SED
) 's:REPLACE_GCCINC_DIR:$(shell $(TARGET_CROSS)gcc -print-file-name=include):g' $(XORG_CF
)
91 $(SED
) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' $(XORG_CF
)
92 $(SED
) 's:REPLACE_ARCH:$(ARCH):g' $(XORG_CF
)
93 $(SED
) 's:#define StdIncDir.*:#define StdIncDir $(STAGING_DIR)/usr/include:g' $(XORG_CF
)
94 $(SED
) 's:#define CcCmd.*:#define CcCmd $(TARGET_CROSS)gcc:g' $(XORG_CF
)
95 $(SED
) 's:#define RanlibCmd.*:#define RanlibCmd $(TARGET_CROSS)ranlib:g' $(XORG_CF
)
96 $(SED
) 's:#define LdCmd.*:#define LdCmd $(TARGET_CROSS)ld:g' $(XORG_CF
)
97 $(SED
) 's:#.*define.*HasPam.*YES::g' $(XORG_DIR
)/config
/cf
/linux.cf
98 $(SED
) 's:#.*define.*CrossCompiling.*NO:#define CrossCompiling YES:g' $(XORG_DIR
)/config
/cf
/Imake.tmpl
99 $(SED
) 's:#.*undef.*CrossCompileDir.*:#define CrossCompileDir $(STAGING_DIR)/bin:g' $(XORG_DIR
)/config
/cf
/Imake.tmpl
100 $(SED
) 's:REPLACE_XORG_ARCH:$(XARCH):g' $(XORG_DIR
)/config
/cf
/cross.def
101 touch
$(XORG_DIR
)/.configured
103 $(XORG_XSERVER
): $(XORG_DIR
)/.configured
104 rm -f
$(TARGET_XSERVER
) $(XORG_XSERVER
)
105 ( cd
$(XORG_DIR
); $(MAKE
) \
106 PKG_CONFIG
=$(STAGING_DIR
)/$(PKGCONFIG_TARGET_BINARY
) \
107 World XCURSORGEN
=xcursorgen MKFONTSCALE
=mkfontscale
)
108 touch
-c
$(XORG_XSERVER
)
110 $(STAGING_DIR
)$(TARGET_LIBX
)/libX11.so
.6.2: $(XORG_XSERVER
)
111 mkdir
-p
$(STAGING_DIR
)/usr
/X11R6
112 ln
-fs ..
/..
/include $(STAGING_DIR
)/usr
/X11R6
/include
113 ln
-fs ..
/..
/lib
$(STAGING_DIR
)$(TARGET_LIBX
)
114 ( cd
$(XORG_DIR
); $(MAKE
) \
115 DESTDIR
=$(STAGING_DIR
) install XCURSORGEN
=xcursorgen MKFONTSCALE
=mkfontscale
)
116 cp package
/xorg
/x11.
pc package
/xorg
/xext.
pc \
117 package
/xorg
/xproto.
pc package
/xorg
/kbproto.
pc \
118 package
/xorg
/xau.
pc package
/xorg
/xdmcp.
pc \
119 package
/xorg
/xextproto.
pc package
/xorg
/xrandr.
pc \
120 package
/xorg
/xinerama.
pc $(STAGING_DIR
)/lib
/pkgconfig
121 touch
-c
$(STAGING_DIR
)$(TARGET_LIBX
)/libX11.so
.6.2
123 $(TARGET_XSERVER
): $(XORG_XSERVER
)
124 mkdir
-p
$(XORG_BINX
)
125 for file in
$(XORG_APPS
); do \
126 cp
-f
$(XORG_DIR
)/programs
/$$file $(XORG_BINX
); \
127 chmod a
+x
$(XORG_PROGS
)/$$file; \
128 $(STRIPCMD
) $(XORG_PROGS
)/$$file ||
/bin
/true
; \
130 cp
$(XORG_XSERVER
) $(TARGET_XSERVER
)
131 (cd
$(XORG_BINX
); ln
-snf
$(XSERVER_BINARY
) X
)
132 $(STRIPCMD
) $(TARGET_XSERVER
)
133 mkdir
-p
$(XORG_LIBX
)/modules
134 cp
-LRf
$(XORG_DIR
)/exports
/lib
/modules
/ $(XORG_LIBX
)/
135 ( cd
$(XORG_DIR
)/fonts
; $(MAKE
) \
136 DESTDIR
=$(TARGET_DIR
) install XCURSORGEN
=xcursorgen MKFONTSCALE
=mkfontscale
)
137 cp
-LRf
$(XORG_DIR
)/fonts
/bdf
/misc
/7x14.bdf
$(XORG_LIBX
)/X11
/fonts
/misc
/
138 cp
-LRf
$(XORG_DIR
)/fonts
/bdf
/misc
/7x14-L1.bdf
$(XORG_LIBX
)/X11
/fonts
/misc
/
139 cp
-LRf
$(XORG_DIR
)/fonts
/bdf
/misc
/7x14B.bdf
$(XORG_LIBX
)/X11
/fonts
/misc
/
140 cp
-LRf
$(XORG_DIR
)/fonts
/bdf
/misc
/7x14B-L1.bdf
$(XORG_LIBX
)/X11
/fonts
/misc
/
141 cp
-LRf
$(XORG_DIR
)/fonts
/bdf
/misc
/cursor.bdf
$(XORG_LIBX
)/X11
/fonts
/misc
/
142 cp
-f package
/xorg
/fonts.alias
$(XORG_LIBX
)/X11
/fonts
/misc
/
143 ( cd
$(XORG_LIBX
)/X11
/fonts
/misc
/; mkfontdir
)
144 rm -rf
$(XORG_LIBX
)/X11
/fonts
/100dpi
145 rm -rf
$(XORG_LIBX
)/X11
/fonts
/75dpi
146 rm -rf
$(XORG_LIBX
)/X11
/fonts
/cyrillic
147 rm -rf
$(XORG_LIBX
)/X11
/fonts
/local
148 (cd
$(TARGET_DIR
)/usr
/bin
; ln
-snf
$(TARGET_BINX
) X11
)
149 cp
-LRf
$(STAGING_DIR
)$(TARGET_LIBX
)/X11
/xkb
$(XORG_LIBX
)/X11
/
150 mv
$(XORG_LIBX
)/X11
/xkb
/xkbcomp
$(XORG_BINX
)/
151 (cd
$(XORG_LIBX
)/X11
/xkb
; ln
-s ..
/..
/..
/bin
/xkbcomp
)
152 rm -rf
$(XORG_LIBX
)/X11
/xkb
/compiled
153 (cd
$(XORG_LIBX
)/X11
/xkb
; ln
-s
/tmp compiled
)
154 cp
-LRf
$(STAGING_DIR
)$(TARGET_LIBX
)/X11
/icons
$(XORG_LIBX
)/X11
/
155 -cp
-LRf
$(STAGING_DIR
)$(TARGET_LIBX
)/X11
/locale
$(XORG_LIBX
)/X11
/
156 cp
-LRf
$(STAGING_DIR
)$(TARGET_LIBX
)/X11
/rgb.txt
$(XORG_LIBX
)/X11
/
157 cp
-LRf
$(STAGING_DIR
)$(TARGET_LIBX
)/X11
/XKeysymDB
$(XORG_LIBX
)/X11
/
158 cp
-LRf
$(STAGING_DIR
)$(TARGET_LIBX
)/X11
/XErrorDB
$(XORG_LIBX
)/X11
/
159 mkdir
-p
$(TARGET_DIR
)/etc
/X11
/
160 $(SED
) "s,^sysclientrc=.*,sysclientrc=/etc/X11/Xsession,g" $(XORG_BINX
)/startx
161 $(SED
) "s,^sysserverrc=.*,sysserverrc=/etc/X11/Xserver,g" $(XORG_BINX
)/startx
162 cp
-LRf package
/xorg
/xorg.conf
$(TARGET_DIR
)/etc
/X11
/
163 cp
-LRf package
/xorg
/Xsession
$(TARGET_DIR
)/etc
/X11
/
164 cp
-LRf package
/xorg
/Xserver
$(TARGET_DIR
)/etc
/X11
/
165 touch
-c
$(TARGET_XSERVER
)
167 $(DL_DIR
)/$(DEJAVU_SOURCE
):
168 $(WGET
) -P
$(DL_DIR
) $(DEJAVU_SITE
)/$(DEJAVU_SOURCE
)
170 $(DEJAVU_DIR
)/.unpacked
: $(DL_DIR
)/$(DEJAVU_SOURCE
)
171 $(DEJAVU_CAT
) $(DL_DIR
)/$(DEJAVU_SOURCE
) |
tar -C
$(BUILD_DIR
) $(TAR_OPTIONS
) -
172 touch
$(DEJAVU_DIR
)/.unpacked
174 $(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/DejaVuSansMono.ttf
: $(DEJAVU_DIR
)/.unpacked
175 mkdir
-p
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
176 rm -f
$(DEJAVU_DIR
)/*Condensed
*.ttf
177 rm -f
$(DEJAVU_DIR
)/*ExtraLight
*.ttf
178 cp
-LRf
$(DEJAVU_DIR
)/DejaVu
*-Bold.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
179 cp
-LRf
$(DEJAVU_DIR
)/DejaVu
*-BoldOblique.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
180 cp
-LRf
$(DEJAVU_DIR
)/DejaVu
*-Oblique.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
181 cp
-LRf
$(DEJAVU_DIR
)/DejaVuSans.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
182 cp
-LRf
$(DEJAVU_DIR
)/DejaVuSansMono.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
183 cp
-LRf
$(DEJAVU_DIR
)/DejaVuSerif.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
184 cp
-LRf
$(DEJAVU_DIR
)/DejaVuSerif.ttf
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
185 cp package
/xorg
/fonts.cache-1
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/
186 ( cd
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/; mkfontdir
)
187 touch
-c
$(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/DejaVuSansMono.ttf
189 $(XORG_LIBX
)/libX11.so
.6.2: $(TARGET_XSERVER
) $(XORG_LIBX
)/X11
/fonts
/ttf-dejavu
/DejaVuSansMono.ttf
190 mkdir
-p
$(XORG_LIBX
)
191 set
-e
; for dirs in
$(XORG_LIBS
); do \
192 file
=`find $(XORG_LDIR)/$$dirs -type f -iname "*$$dirs.so*"`; \
193 $(STRIPCMD
) $(STRIP_STRIP_UNNEEDED
) $$file; \
194 cp
-f
$$file $(XORG_LIBX
); \
195 file
=`find $(XORG_LDIR)/$$dirs -type l -iname "*$$dirs.so*"`; \
196 cp
-pRf
$$file $(XORG_LIBX
); \
198 (cd
$(TARGET_DIR
)/usr
/lib
; ln
-snf
$(TARGET_LIBX
) X11
)
199 touch
$(TARGET_DIR
)/etc
/ld.so.conf
200 if
[ "`grep -c '$(TARGET_LIBX)' $(TARGET_DIR)/etc/ld.so.conf`" = "0" ]; then \
201 echo
"$(TARGET_LIBX)" >> $(TARGET_DIR
)/etc
/ld.so.conf
; \
203 touch
-c
$(XORG_LIBX
)/libX11.so
.6.2
205 $(TARGET_DIR
)/usr
/bin
/mcookie
: package
/xorg
/mcookie.c
206 $(TARGET_CROSS
)gcc
-Wall
-Os
-s package
/xorg
/mcookie.c
-o
$(TARGET_DIR
)/usr
/bin
/mcookie
208 xorg
: zlib png pkgconfig expat fontconfig libdrm
$(STAGING_DIR
)$(TARGET_LIBX
)/libX11.so
.6.2 \
209 $(XORG_LIBX
)/libX11.so
.6.2 $(TARGET_DIR
)/usr
/bin
/mcookie
211 xorg-source
: $(DL_DIR
)/$(XORG_SOURCE
) $(DL_DIR
)/$(DEJAVU_SOURCE
)
214 -rm -rf
$(TARGET_DIR
)/usr
/X11R6
215 -$(MAKE
) -C
$(XORG_DIR
) clean
219 -rm -rf
$(TARGET_DIR
)/usr
/X11R6
221 #############################################################
223 # Toplevel Makefile options
225 #############################################################