3 # Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
5 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
8 #--------------------------------------------------------------
9 # You shouldn't need to mess with anything beyond this point...
10 #--------------------------------------------------------------
11 noconfig_targets := menuconfig config oldconfig silentoldconfig randconfig \
12 defconfig allyesconfig allnoconfig clean distclean \
15 include $(top_builddir)Rules.mak
16 sub_headers := headers
18 #suspicious_dependency:=include/bits
20 ifeq ($(HAVE_DOT_CONFIG),y)
24 # In this section, we need .config
27 include $(top_srcdir)ldso/Makefile.in
28 include $(top_srcdir)libcrypt/Makefile.in
29 include $(top_srcdir)libintl/Makefile.in
30 include $(top_srcdir)libm/Makefile.in
31 include $(top_srcdir)libnsl/Makefile.in
32 include $(top_srcdir)libresolv/Makefile.in
33 include $(top_srcdir)libutil/Makefile.in
34 include $(top_srcdir)libpthread/Makefile.in
35 include $(top_srcdir)librt/Makefile.in
36 include $(top_srcdir)extra/locale/Makefile.in
38 # last included to catch all the objects added by others (locales/threads)
39 include $(top_srcdir)libc/Makefile.in
41 # If the .config changes then we have to make sure that our includes are
42 # updated properly. This would normally work by saying that the headers
43 # have uClibc_config.h as prerequisite but since we _symlink_ the headers
44 # and do not (?) want to rely on 'make -L' we better update them right here,
45 # on spot to save us from alot of hazzle.
46 include/bits/uClibc_config.h: extra/config/conf .config $(top_srcdir)extra/scripts/conf-header.sh | include/bits
48 @#superfluous: $(Q)$(INSTALL) -d $(dir $@)
49 $(Q)@$< -s $(top_srcdir)extra/Configs/Config.in
50 $(Q)$(top_srcdir)extra/scripts/conf-header.sh .config > $@
53 # For the moment, we have to keep re-running this target
54 # because the fix includes scripts rely on pre-processers
55 # in order to generate the headers correctly :(. That
56 # means we can't use the $(HOSTCC) in order to get the
58 ifeq ($(ARCH_USE_MMU),y)
59 export header_extra_args =
61 export header_extra_args = -n
63 HEADERS_BITS_COMMON := $(notdir $(wildcard $(top_srcdir)libc/sysdeps/linux/common/bits/*.h))
64 HEADERS_BITS_ARCH := $(notdir $(wildcard $(top_srcdir)libc/sysdeps/linux/$(TARGET_ARCH)/bits/*.h))
65 HEADERS_BITS_SUBARCH :=
66 ifneq ($(TARGET_SUBARCH),)
67 HEADERS_BITS_SUBARCH := $(notdir $(wildcard $(top_srcdir)libc/sysdeps/linux/$(TARGET_ARCH)/bits/$(TARGET_SUBARCH)/*.h))
69 HEADERS_BITS_COMMON := $(filter-out $(HEADERS_BITS_ARCH) $(HEADERS_BITS_SUBARCH) $(HEADERS_BITS_PTHREAD),$(HEADERS_BITS_COMMON))
71 HEADERS_SYS_COMMON := $(notdir $(wildcard $(top_srcdir)libc/sysdeps/linux/common/sys/*.h))
72 HEADERS_SYS_ARCH := $(notdir $(wildcard $(top_srcdir)libc/sysdeps/linux/$(TARGET_ARCH)/sys/*.h))
73 HEADERS_SYS_COMMON := $(filter-out $(HEADERS_SYS_ARCH),$(HEADERS_SYS_COMMON))
75 ALL_HEADERS_COMMON := include/fpu_control.h include/dl-osinfo.h \
77 ALL_HEADERS_BITS_COMMON := $(addprefix include/bits/,$(HEADERS_BITS_COMMON))
78 ALL_HEADERS_BITS_ARCH := $(addprefix include/bits/,$(HEADERS_BITS_ARCH))
79 ifneq ($(TARGET_SUBARCH),)
80 ALL_HEADERS_BITS_SUBARCH := $(addprefix include/bits/,$(HEADERS_BITS_SUBARCH))
82 ALL_HEADERS_BITS_SUBARCH :=
84 ALL_HEADERS_SYS_COMMON := $(addprefix include/sys/,$(HEADERS_SYS_COMMON))
85 ALL_HEADERS_SYS_ARCH := $(addprefix include/sys/,$(HEADERS_SYS_ARCH))
87 target-headers-sysdep := \
88 $(ALL_HEADERS_COMMON) \
89 $(ALL_HEADERS_BITS_COMMON) \
90 $(ALL_HEADERS_BITS_ARCH) \
91 $(ALL_HEADERS_BITS_SUBARCH) \
92 $(ALL_HEADERS_SYS_COMMON) \
93 $(ALL_HEADERS_SYS_ARCH)
95 include/fpu_control.h:
97 $(Q)[ -r libc/sysdeps/linux/$(TARGET_ARCH)/$(@F) ] && \
98 $(LN) -fs ../libc/sysdeps/linux/$(TARGET_ARCH)/$(@F) $@ || \
99 $(LN) -fs ../libc/sysdeps/linux/common/$(@F) $@
101 include/dl-osinfo.h include/hp-timing.h:
102 $(do_ln) ../libc/sysdeps/linux/common/$(@F) $@
104 $(ALL_HEADERS_BITS_COMMON):
105 $(do_ln) ../../libc/sysdeps/linux/common/bits/$(@F) $@
107 $(ALL_HEADERS_BITS_ARCH):
108 $(do_ln) ../../libc/sysdeps/linux/$(TARGET_ARCH)/bits/$(@F) $@
110 ifneq ($(TARGET_SUBARCH),)
111 $(ALL_HEADERS_BITS_SUBARCH):
112 $(do_ln) ../../../libc/sysdeps/linux/$(TARGET_ARCH)/bits/$(TARGET_SUBARCH)/$(@F) $@
115 ifneq ($(strip $(ALL_HEADERS_SYS_COMMON)),)
116 $(ALL_HEADERS_SYS_COMMON):
117 $(do_ln) ../../libc/sysdeps/linux/common/sys/$(@F) $@
120 ifneq ($(strip $(ALL_HEADERS_SYS_ARCH)),)
121 $(ALL_HEADERS_SYS_ARCH):
122 $(do_ln) ../../libc/sysdeps/linux/$(TARGET_ARCH)/sys/$(@F) $@
125 $(target-headers-sysdep): | include/bits
127 sysdep_common_headers-clean:
128 $(RM) $(ALL_HEADERS_COMMON)
129 headers_clean-y += sysdep_common_headers-clean
131 # The headers. Arch specific headers are specified via ARCH_HEADERS in
132 # libc/sysdeps/linux/$(TARGET_ARCH)/Makefile.arch which appends those via
133 # libc/sysdeps/linux/Makefile.commonarch to headers-y
134 headers-y += $(target-headers-sysdep)
136 headers: include/bits/uClibc_config.h
138 pregen: include/bits/sysnum.h headers
139 $(Q)$(if $(UCLIBC_HAS_LOCALE),$(MAKE) -C extra/locale locale_headers)
141 include/bits/sysnum.h: $(top_srcdir)extra/scripts/gen_bits_syscall_h.sh
142 $(Q)$(INSTALL) -d $(@D)
145 cd $(top_builddir); \
146 tmp=`mktemp include/bits/sysnum.h.XXXXXX 2>/dev/null`; \
147 [ -z "$$tmp" ] && tmp='include/bits/sysnum.h.new'; \
148 KERNEL_HEADERS="${KERNEL_HEADERS}" top_builddir=. CC="$(CC) $(CPU_CFLAGS)" $(SHELL) extra/scripts/gen_bits_syscall_h.sh > $$tmp; \
149 if cmp include/bits/sysnum.h $$tmp >/dev/null 2>&1; then \
152 mv -f $$tmp include/bits/sysnum.h; \
155 $(LOCAL_INSTALL_PATH):
156 $(Q)$(MAKE) PREFIX=$(shell pwd)/ RUNTIME_PREFIX=./ \
157 DEVEL_PREFIX=$(LOCAL_INSTALL_PATH)/usr/ \
159 install_kernel_headers
160 $(Q)$(MAKE) PREFIX=$(shell pwd)/ RUNTIME_PREFIX=./ \
161 DEVEL_PREFIX=$(LOCAL_INSTALL_PATH)/usr/ \
165 install: install_runtime install_dev
168 RUNTIME_PREFIX_LIB_FROM_DEVEL_PREFIX_LIB=$(shell $(top_srcdir)extra/scripts/relative_path.sh $(DEVEL_PREFIX)lib $(RUNTIME_PREFIX)lib)
170 $(top_builddir)extra/scripts/unifdef: $(top_srcdir)extra/scripts/unifdef.c
173 # Installs kernel header files (linux/*, asm/*, asm-generic/*).
174 install_kernel_headers: headers
175 top_builddir=$(top_builddir) \
176 $(top_srcdir)extra/scripts/install_kernel_headers.sh include $(PREFIX)$(DEVEL_PREFIX)include
178 # Installs header files.
179 install_headers: headers $(top_builddir)extra/scripts/unifdef
180 $(INSTALL) -d $(PREFIX)$(DEVEL_PREFIX)include
181 top_builddir=$(top_builddir) \
182 $(top_srcdir)extra/scripts/install_headers.sh include $(PREFIX)$(DEVEL_PREFIX)include
183 printf '#ifndef _LIBC_INTERNAL_H\n#define _LIBC_INTERNAL_H 1\n#endif\n' > \
184 $(PREFIX)$(DEVEL_PREFIX)include/libc-internal.h
185 echo '/* Dont use _syscall#() macros; use the syscall() function */' > \
186 $(PREFIX)$(DEVEL_PREFIX)include/bits/syscalls.h
187 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/dl-osinfo.h
188 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/_lfs_64.h
189 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/uClibc_uintmaxtostr.h
190 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/kernel_sigaction.h
191 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/kernel_stat.h
192 ifneq ($(UCLIBC_HAS_FLOATS),y)
193 # Remove floating point related headers since float support is disabled.
194 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/complex.h
195 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/fpu_control.h
196 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/ieee754.h
197 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/math.h
198 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/tgmath.h
199 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/uClibc_fpmax.h
201 ifneq ($(UCLIBC_HAS_FENV),y)
202 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/fenv.h \
203 $(PREFIX)$(DEVEL_PREFIX)include/bits/fenv.h \
204 $(PREFIX)$(DEVEL_PREFIX)include/bits/fenvinline.h
206 ifneq ($(UCLIBC_HAS_WCHAR),y)
207 # Remove wide char headers since wide char support is disabled.
208 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/wctype.h
209 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/wchar.h
211 ifneq ($(UCLIBC_HAS_LOCALE),y)
212 # Remove iconv header since locale support is disabled.
213 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/iconv.h
215 ifneq ($(UCLIBC_HAS_GLIBC_CUSTOM_PRINTF),y)
216 # Remove printf header since custom print specifier support is disabled.
217 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/printf.h
219 ifneq ($(UCLIBC_HAS_XLOCALE),y)
220 # Remove xlocale header since extended locale support is disabled.
221 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/xlocale.h
223 ifneq ($(UCLIBC_HAS_GETTEXT_AWARENESS),y)
224 # Remove libintl header since gettext support is disabled.
225 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/libintl.h
227 ifneq ($(UCLIBC_HAS_REGEX),y)
228 # Remove regex headers since regex support is disabled.
229 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/regex.h
230 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/regexp.h
232 ifneq ($(UCLIBC_HAS_WORDEXP),y)
233 # Remove wordexp header since wordexp support is disabled.
234 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/wordexp.h
236 ifneq ($(UCLIBC_HAS_FTW),y)
237 # Remove ftw header since ftw support is disabled.
238 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/ftw.h
240 ifneq ($(UCLIBC_HAS_GLOB),y)
241 # Remove glob header since glob support is disabled.
242 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/glob.h
244 ifneq ($(UCLIBC_HAS_GNU_GETOPT),y)
245 ifneq ($(UCLIBC_HAS_GETOPT_LONG),y)
246 # Remove getopt header since gnu getopt support is disabled.
247 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/getopt.h
250 ifneq ($(UCLIBC_HAS_SHADOW),y)
251 # Remove shadow header since shadow password support is disabled.
252 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/shadow.h
254 ifneq ($(PTHREADS_DEBUG_SUPPORT),y)
255 # Remove thread_db header since thread debug support is disabled.
256 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/thread_db.h
258 ifneq ($(UCLIBC_HAS_THREADS),y)
259 # Remove pthread headers since thread support is disabled.
260 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/*thread*.h
261 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/semaphore.h
262 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/*thread*.h
264 ifneq ($(HAVE_SHARED),y)
265 # Remove dlfcn header if we don't have shared libraries.
266 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/dlfcn.h
267 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/dlfcn.h
269 ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
270 # Remove this as it is only used internally.
271 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/tls.h
273 ifneq ($(UCLIBC_HAS_GNU_ERROR),y)
274 # Remove error.h upon request
275 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/error.h
277 ifneq ($(UCLIBC_HAS_BSD_ERR),y)
278 # Remove err.h upon request
279 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/err.h
281 ifneq ($(UCLIBC_SUSV3_LEGACY),y)
282 # Remove timeb.h since the LEGACY ftime() was disabled upon request
283 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/timeb.h
285 ifneq ($(UCLIBC_HAS_EPOLL),y)
286 # Remove epoll.h since epoll_*() were disabled upon request
287 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/epoll.h
289 ifneq ($(UCLIBC_HAS_XATTR),y)
290 # Remove xattr.h since extended attributes were disabled upon request
291 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/xattr.h
293 ifneq ($(UCLIBC_HAS_PTY),y)
294 # Remove pty.h since PTY support was disabled upon request
295 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/pty.h
297 ifneq ($(UCLIBC_LINUX_SPECIFIC),y)
298 # Remove linux-specific headers as requested
299 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/inotify.h
300 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/perm.h
301 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/personality.h
303 ifneq ($(UCLIBC_SV4_DEPRECATED),y)
304 # Remove ustat.h since deprecated SV4 support was disabled upon request
305 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/ustat.h
306 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/ustat.h
307 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/ustat.h
309 ifeq ($(UCLIBC_HAS_REALTIME)$(UCLIBC_HAS_ADVANCED_REALTIME),)
310 # Remove SUSv-realtime related message-queue headers upon request
311 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/mqueue.h
312 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/mqueue.h
313 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/mqueue.h
315 ifneq ($(UCLIBC_HAS_REALTIME),y)
316 # Remove SUSv-realtime related headers upon request
317 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sched.h
318 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/sched.h
319 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/sched.h
320 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/semaphore.h
321 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/semaphore.h
322 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/semaphore.h
324 ifneq ($(UCLIBC_HAS_SOCKET),y)
325 # Remove socket related headers upon request
326 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/socket.h
327 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/socket.h
328 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/sys/socketvar.h
330 ifneq ($(UCLIBC_HAS_CRYPT),y)
331 # Remove crypt.h since libcrypt was disabled upon request
332 $(RM) $(PREFIX)$(DEVEL_PREFIX)include/crypt.h
335 # Installs development library links.
336 install_dev: install_headers
337 $(INSTALL) -d $(PREFIX)$(DEVEL_PREFIX)lib
338 -$(INSTALL) -m 644 lib/*.[ao] $(PREFIX)$(DEVEL_PREFIX)lib/
339 ifeq ($(HAVE_SHARED),y)
340 for i in `find lib/ -type l -name 'lib[a-zA-Z]*.so' | \
341 sed -e 's/lib\///'` ; do \
342 $(LN) -sf $(RUNTIME_PREFIX_LIB_FROM_DEVEL_PREFIX_LIB)$$i.$(MAJOR_VERSION) \
343 $(PREFIX)$(DEVEL_PREFIX)lib/$$i; \
345 if [ -f $(top_builddir)lib/libc.so -a -f $(PREFIX)$(RUNTIME_PREFIX)lib/$(SHARED_MAJORNAME) ] ; then \
346 $(RM) $(PREFIX)$(DEVEL_PREFIX)lib/libc.so; \
347 sed -e 's:$(NONSHARED_LIBNAME):$(DEVEL_PREFIX)lib/$(NONSHARED_LIBNAME):' \
348 -e 's:$(SHARED_MAJORNAME):$(RUNTIME_PREFIX)lib/$(SHARED_MAJORNAME):' \
349 -e 's:$(UCLIBC_LDSO):$(RUNTIME_PREFIX)lib/$(UCLIBC_LDSO):' \
350 $(top_builddir)lib/libc.so > $(PREFIX)$(DEVEL_PREFIX)lib/libc.so; \
352 ifeq ($(UCLIBC_HAS_THREADS),y)
353 ifneq ($(LINUXTHREADS_OLD),y)
354 if [ -f $(top_builddir)lib/libpthread.so -a -f $(PREFIX)$(RUNTIME_PREFIX)lib/libpthread.so.$(MAJOR_VERSION) ] ; then \
355 $(RM) $(PREFIX)$(DEVEL_PREFIX)lib/libpthread.so; \
356 cp $(top_srcdir)extra/scripts/format.lds $(PREFIX)$(DEVEL_PREFIX)lib/libpthread.so; \
357 echo "GROUP ( $(RUNTIME_PREFIX)lib/libpthread.so.$(MAJOR_VERSION) $(DEVEL_PREFIX)lib/libpthread_nonshared.a )" \
358 >> $(PREFIX)$(DEVEL_PREFIX)lib/libpthread.so; \
362 ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
363 $(LN) -sf $(RUNTIME_PREFIX_LIB_FROM_DEVEL_PREFIX_LIB)libthread_db.so.1 \
364 $(PREFIX)$(DEVEL_PREFIX)lib/libthread_db.so
367 # # If we build shared libraries then the static libs are PIC...
368 # # Make _pic.a symlinks to make mklibs.py and similar tools happy.
369 if [ -d lib ] ; then \
370 for i in `find lib/ -type f -name 'lib*.a' | sed -e 's/lib\///'` ; do \
371 $(LN) -sf $$i $(PREFIX)$(DEVEL_PREFIX)lib/`echo $$i \
372 | sed -e 's/\.a$$/_pic.a/'`; \
377 ifeq ($(UCLIBC_FORMAT_SHARED_FLAT),y)
378 for file in lib/lib*.gdb; do \
379 if test -f $$file; then \
380 $(INSTALL) -m 755 $$file $(PREFIX)$(DEVEL_PREFIX)lib; \
381 $(INSTALL) -m 755 `echo $$file | sed 's/\.gdb$$//'` \
382 $(PREFIX)$(DEVEL_PREFIX)lib; \
387 # Installs run-time libraries
389 ifeq ($(HAVE_SHARED),y)
390 $(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)lib
391 $(INSTALL) -m 644 lib/lib*-$(VERSION).so \
392 $(PREFIX)$(RUNTIME_PREFIX)lib
393 cd lib && $(TAR) -cf - *.so.* | $(TAR) -xf - -C $(PREFIX)$(RUNTIME_PREFIX)lib
394 @if [ -x lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so ] ; then \
397 $(INSTALL) -m 755 lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so \
398 $(PREFIX)$(RUNTIME_PREFIX)lib; \
403 $(Q)$(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C utils
405 # Installs helper applications, such as 'ldd' and 'ldconfig'
407 $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C utils utils_install
409 else # ifeq ($(HAVE_DOT_CONFIG),y)
414 @echo "Need to make a config file first, run: make menuconfig"
417 endif # ifeq ($(HAVE_DOT_CONFIG),y)
424 # ---------------------------------------------------------------------------
425 extra/config/conf extra/config/mconf: $(suspicious_dependency)
426 $(Q)$(MAKE) -C extra/config $(notdir $@)
428 menuconfig: extra/config/mconf $(suspicious_dependency)
429 $(Q)./extra/config/mconf extra/Configs/Config.in
431 config: extra/config/conf $(suspicious_dependency)
432 $(Q)./extra/config/conf extra/Configs/Config.in
434 oldconfig: extra/config/conf $(suspicious_dependency)
435 $(Q)./extra/config/conf -o extra/Configs/Config.in
437 silentoldconfig: extra/config/conf $(suspicious_dependency)
438 $(Q)./extra/config/conf -s extra/Configs/Config.in
440 randconfig: extra/config/conf $(suspicious_dependency)
441 $(Q)./extra/config/conf -r extra/Configs/Config.in
443 allyesconfig: extra/config/conf $(suspicious_dependency)
444 $(Q)./extra/config/conf -y extra/Configs/Config.in
445 sed -i -e "s/^DODEBUG=.*/# DODEBUG is not set/" .config
446 sed -i -e "s/^DOASSERTS=.*/# DOASSERTS is not set/" .config
447 sed -i -e "s/^SUPPORT_LD_DEBUG_EARLY=.*/# SUPPORT_LD_DEBUG_EARLY is not set/" .config
448 sed -i -e "s/^SUPPORT_LD_DEBUG=.*/# SUPPORT_LD_DEBUG is not set/" .config
449 sed -i -e "s/^UCLIBC_MJN3_ONLY=.*/# UCLIBC_MJN3_ONLY is not set/" .config
450 $(Q)./extra/config/conf -o extra/Configs/Config.in
452 allnoconfig: extra/config/conf $(suspicious_dependency)
453 $(Q)./extra/config/conf -n extra/Configs/Config.in
455 defconfig: extra/config/conf $(suspicious_dependency)
456 $(Q)./extra/config/conf -d extra/Configs/Config.in \
457 -D extra/Configs/defconfigs/$(ARCH)
460 $(Q)$(RM) -r lib include/bits
461 $(RM) ldso/*/*.a libpthread/*/*.a libc/*.a libcrypt/*.a libintl/*.a \
462 libm/*.a libnsl/*.a libpthread/*.a libresolv/*.a librt/*.a \
463 libutil/*.a lib/*.a \
464 include/fpu_control.h include/dl-osinfo.h include/hp-timing.h
465 $(MAKE) objclean-y headers_clean-y
466 $(MAKE) -s -C test clean
467 $(MAKE) -C utils utils_clean
469 for i in `(cd libc/sysdeps/linux/common/sys; ls *.h)` ; do \
470 $(RM) include/sys/$$i; \
472 if [ -d libc/sysdeps/linux/$(TARGET_ARCH)/sys ] ; then \
473 for i in `(cd libc/sysdeps/linux/$(TARGET_ARCH)/sys; ls *.h)` ; do \
474 $(RM) include/sys/$$i; \
477 @$(RM) include/linux include/asm*
478 $(RM) $(top_builddir)extra/scripts/unifdef
479 $(RM) -r $(LOCAL_INSTALL_PATH)
482 -find . \( -name core -o -name \*.orig -o -name \*~ -o -name .\*.dep \) -exec $(RM) {} \;
483 $(RM) .config .config.old .config.cmd
484 $(RM) extra/locale/*.tgz
485 $(MAKE) -C extra/config distclean
488 $(RM) -r ../uClibc-$(VERSION) ../uClibc-$(VERSION).tar.bz2
489 svn -q export . ../uClibc-$(VERSION)
490 $(TAR) cjf ../uClibc-$(VERSION).tar.bz2 -C .. uClibc-$(VERSION)
491 du -b ../uClibc-$(VERSION).tar.bz2
493 test check: test_compile
496 test_compile: $(LOCAL_INSTALL_PATH)
497 $(Q)$(MAKE) -C test compile