1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
top-all:
include Makefile.top
#####################################################################
configure: configure.in
./autogen.sh
AUTOCONFFILE := config/kconfig/.autoinclude/autoconf-$(ARCH).h
CONFIGURED := $(shell test -f .config && test -f $(AUTOCONFFILE) \
> /dev/null 2>&1 && echo y )
AUTOFILES = config/Makefile.defs src/shared/config.h
top-all: configure $(if $(CONFIGURED),all,bootstrap)
top-all .config:
@true
all-local: $(ARCHINCLUDES) $(AUTOFILES)
.PHONY: config
config:
@$(MAKE) -s -C config $@
%config:
@$(MAKE) -s -C config $@
bootstrap:
@$(MAKE) -s -C config menuconfig ; \
test -f .config && $(MAKE) all
$(AUTOFILES) : % : %.in configure.in
@rm -f $@
@test -x config.status && ./config.status && exit 0 ; \
test -x ./configure && ./configure && exit 0 ; \
./autogen.sh && ./configure
@for x in $(AUTOFILES) ; do test -f $$x && chmod -w $$x ; done ; true
AWKTEXT := ' { print "\#define MOL_MAJOR_VERSION " $$1 ; \
print "\#define MOL_MINOR_VERSION " $$2 ; \
print "\#define MOL_PATCHLEVEL " $$3 }'
$(ARCHINCLUDES): configure.in Makefile Makefile.top
@rm -rf $@
@install -d $@
@ln -s ../$(AUTOCONFFILE) $@/autoconf.h
@ln -s ../src/include/$(ARCH) $(ARCHINCLUDES)/asm
@ln -s ../src/include/$(CPU) $(ARCHINCLUDES)/cpu
@{ DATE="$(shell echo `date +'%b %e %Y %H:%M'`)" ; \
echo "#define MOL_BUILD_DATE \"$$DATE\"" ; \
echo "#define MOL_VERSION_STR \"$(VERSION)\"" ; \
echo "#define MOL_RELEASE \"$(RELEASENAME)\"" ; \
echo $(VERSION) | awk -F . -- $(AWKTEXT) ; \
echo = "Building mol-$(VERSION)$(EXTRA_VERSION) [$$DATE]" 1>&2 ; \
} 2>&1 > $(ARCHINCLUDES)/molversion.h
#####################################################################
libimport:
scripts/libimport import
libpopulate:
scripts/libimport populate
libimport_dist:
scripts/libimport import_dist
libdelete:
scripts/libimport delete
libexport: clean
scripts/libimport export
libimport_clean:
$(RM) -rf libimport
.PHONY: libimport
#####################################################################
clean-local:
@rm -f *.core
@rm -rf $(ARCHINCLUDES)
@rm -rf mollib/bin
distclean-local:
@rm -f $(AUTOFILES) config.* .config
@$(MAKE) -C config distclean
mrproper: distclean
@rm -f ./configure
maintainerclean-local:
@rm -f ./configure
@$(MAKE) -C config maintainerclean
#####################################################################
SUBDIRS = . scripts src
MAKE += -s
#####################################################################
#ifeq ($(CONFIGURED),y)
include Rules.make
#endif
include Makefile.dist
|