summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--Makefile11
-rw-r--r--Vars.make22
2 files changed, 23 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 10df035..8551f28 100644
--- a/Makefile
+++ b/Makefile
@@ -1,133 +1,124 @@
#!/usr/bin/make -f
export TOPDIR:=$(shell pwd)
include $(TOPDIR)/Vars.make
noconfig_targets := xconfig menuconfig config oldconfig randconfig \
defconfig allyesconfig allnoconfig allmodconfig \
clean-configs
configs += $(TOPDIR)/core/applets/config.in $(TOPDIR)/core/apps/config.in $(TOPDIR)/core/multimedia/config.in $(TOPDIR)/core/pim/config.in $(TOPDIR)/core/pim/today/plugins/config.in $(TOPDIR)/core/settings/config.in $(TOPDIR)/development/config.in $(TOPDIR)/inputmethods/config.in $(TOPDIR)/libopie/ofileselector/config.in $(TOPDIR)/libopie/pim/config.in $(TOPDIR)/libsql/config.in $(TOPDIR)/noncore/applets/config.in $(TOPDIR)/noncore/apps/opie-console/test/config.in $(TOPDIR)/noncore/apps/config.in $(TOPDIR)/noncore/comm/config.in $(TOPDIR)/noncore/decorations/config.in $(TOPDIR)/noncore/games/config.in $(TOPDIR)/noncore/graphics/config.in $(TOPDIR)/noncore/multimedia/config.in $(TOPDIR)/noncore/net/config.in $(TOPDIR)/noncore/net/opietooth/config.in $(TOPDIR)/noncore/settings/config.in $(TOPDIR)/noncore/styles/config.in $(TOPDIR)/noncore/tools/calc2/config.in $(TOPDIR)/noncore/tools/config.in $(TOPDIR)/noncore/todayplugins/config.in
# $(TOPDIR)/.config depends on .depends.cfgs, as it depends on $(configs)
# in order to have a full set of config.in files.
# .depends depends on $(TOPDIR)/.config
# everything else depends on .depends, to ensure the dependencies are
# intact.
#
# NOTE: The order in which things happen in this makefile is
# -critical-. Do not rearrange this!
all : $(TOPDIR)/.config
-STRIP=arm-linux-strip
-
-ipks: $(OPIEDIR)/scripts/subst $(OPIEDIR)/scripts/filesubst FORCE
+ipks: $(OPIEDIR)/scripts/subst $(OPIEDIR)/scripts/filesubst FORCE $(TOPDIR)/.config
@find $(OPIEDIR)/ -type f -name \*.control | ( for ctrl in `cat`; do \
prerm=`echo $$ctrl|sed -e 's,\.control$$,.prerm,'`; \
preinst=`echo $$ctrl|sed -e 's,\.control$$,.preinst,'`; \
postrm=`echo $$ctrl|sed -e 's,\.control$$,.postrm,'`; \
postinst=`echo $$ctrl|sed -e 's,\.control$$,.postinst,'`; \
echo "Building ipk of $$ctrl"; \
cd $(OPIEDIR); $(OPIEDIR)/scripts/mkipkg --subst=$(OPIEDIR)/scripts/subst --filesubst=$(OPIEDIR)/scripts/filesubst --control=$$ctrl --prerm=$$prerm --preinst=$$preinst --postrm=$$postrm --postinst=$$postinst --strip=$(STRIP) $(OPIEDIR); \
done )
$(TOPDIR)/.config : $(TOPDIR)/.depends.cfgs
all menuconfig xconfig oldconfig config randconfig allyesconfig allnoconfig defconfig : $(TOPDIR)/.depends.cfgs
clean-configs :
@echo "Wiping generated config.in files..."
@-rm -f $(configs)
ifneq ($(wildcard $(TOPDIR)/.depends.cfgs),)
include $(TOPDIR)/.depends.cfgs
endif
all menuconfig xconfig oldconfig config randconfig allyesconfig allnoconfig defconfig : $(configs)
$(TOPDIR)/.config: $(TOPDIR)/.depends.cfgs $(configs)
$(call descend,scripts/kconfig,conf)
@if [ ! -e $@ ]; then \
cp $(TOPDIR)/def-configs/opie $@; \
fi;
@$(MAKE) -C scripts/kconfig conf;
./scripts/kconfig/conf -s ./config.in
# config rules must have the $(configs) var defined
# at the time that they run. we must ensure that .depends.cfgs
# is built and included by the time we reach this point.
xconfig :
$(call descend,scripts/kconfig,qconf)
LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(TOPDIR)/scripts/kconfig \
./scripts/kconfig/qconf ./config.in
menuconfig : scripts/lxdialog/lxdialog
$(call descend,scripts/kconfig,mconf)
./scripts/kconfig/mconf ./config.in
config :
$(call descend,scripts/kconfig,conf)
./scripts/kconfig/conf ./config.in
oldconfig :
$(call descend,scripts/kconfig,conf)
./scripts/kconfig/conf -o ./config.in
randconfig :
$(call descend,scripts/kconfig,conf)
./scripts/kconfig/conf -r ./config.in
allyesconfig :
$(call descend,scripts/kconfig,conf)
./scripts/kconfig/conf -y ./config.in
allnoconfig :
$(call descend,scripts/kconfig,conf)
./scripts/kconfig/conf -n ./config.in
defconfig :
$(call descend,scripts/kconfig,conf)
./scripts/kconfig/conf -d ./config.in
export
ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),)
export include-config := 1
-include $(TOPDIR)/.config
-include $(TOPDIR)/.depends
endif
-include $(TOPDIR)/.config.cmd
SUBDIRS = $(subdir-y)
-export QMAKESPEC=$(QMAKESPECSDIR)/$(patsubst "%",%,$(CONFIG_SPECFILE))
-
-ifdef CONFIG_OPTIMIZATIONS
-export CFLAGS_RELEASE=$(patsubst "%,%,$(CONFIG_OPTIMIZATIONS))
-export CFLAGS_RELEASE:=$(patsubst %",%,$(CFLAGS_RELEASE))
-endif
-
all clean install ipk: $(SUBDIRS)
lupdate lrelease:
@for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done;
opie-lupdate opie-lrelease:
@for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done;
$(subdir-y) : $(if $(CONFIG_LIBQPE),$(QTDIR)/stamp-headers $(OPIEDIR)/stamp-headers) \
$(if $(CONFIG_LIBQPE-X11),$(QTDIR)/stamp-headers-x11 $(OPIEDIR)/stamp-headers-x11 ) \
$(TOPDIR)/library/custom.h
clean : $(TOPDIR)/.config
apidox : doc/generate_apidox
include $(TOPDIR)/Rules.make
diff --git a/Vars.make b/Vars.make
index eac5cea..b1cdb28 100644
--- a/Vars.make
+++ b/Vars.make
@@ -1,63 +1,85 @@
ifndef QTDIR
$(error QTDIR not set)
endif
prefix=/opt/QtPalmtop
ifeq ($(OPIEDIR),)
export OPIEDIR:=$(TOPDIR)
endif
ifeq ($(IPK_DIR),)
export IPK_DIR:=$(OPIEDIR)
endif
+ifneq ($(wildcard $(TOPDIR)/.config),)
+ include $(TOPDIR)/.config
+endif
+
export QMAKE:=$(OPIEDIR)/qmake/qmake
export QMAKESPECSDIR=$(OPIEDIR)/mkspecs
ifeq ($(QPE_VERSION),)
VERSION_MAJ:=$(shell echo $$(sed -n -e 's/.*QPE_VERSION "\([0-9]*\)\..*\..*".*/\1/p' <$(OPIEDIR)/library/version.h))
VERSION_MIN:=$(shell echo $$(sed -n -e 's/.*QPE_VERSION ".*\.\([0-9]*\)\..*".*/\1/p' <$(OPIEDIR)/library/version.h))
VERSION_PAT:=$(shell echo $$(sed -n -e 's/.*QPE_VERSION ".*\..*\.\([0-9]*\).*/\1/p' <$(OPIEDIR)/library/version.h))
QPE_VERSION:=$(VERSION_MAJ).$(VERSION_MIN).$(VERSION_PAT)
ifeq ($(QPE_VERSION),..)
QPE_VERSION=0.9.3
endif
endif
export QPE_VERSION
SUB_VERSION=$(shell echo $$(sed -n -e 's,.*SUB_VERSION \"\(.*\)\".*,\1,p' <$(OPIEDIR)/library/version.h))
ifeq ($(VERSION_CVS),)
VERSION_CVS:=$(shell date +%Y%m%d)
endif
ifneq ($(filter %snapshot",$(shell cat $(OPIEDIR)/library/version.h|grep QPE_VERSION)),)
SUB_VERSION:=$(VERSION_CVS)
endif
export SUB_VERSION
ifeq ($(QTE_REVISION),)
QTE_REVISION=4
endif
export QTE_REVISION
export DEB_VERSION=2.0
ifeq ($(QTE_BASEVERSION),)
ifneq ($(shell ls $(QTDIR)/include/qglobal.h 2>/dev/null),)
QTE_BASEVERSION:=$(shell cat $(QTDIR)/include/qglobal.h|grep '^\#define QT_VERSION'|grep -v STR|sed -e 's/\#define QT_VERSION\t*//; s/.*\([0-9]\)\([0-9]\)\([0-9]\).*/\1.\2.\3/;')
else
QTE_BASEVERSION=2.3.5
endif
endif
export QTE_BASEVERSION
ifeq ($(QTE_VERSION),)
ifneq ($(shell ls $(QTDIR)/include/qglobal.h 2>/dev/null),)
QTE_VERSION:=$(shell cat $(QTDIR)/include/qglobal.h|grep '^\#define QT_VERSION_STR'|sed -e 's/\#define QT_VERSION_STR\t*//;' -e 's/.*"\([^"]*\)".*/\1/;')
else
QTE_VERSION=2.3.5
endif
endif
export QTE_VERSION
export PATH:=$(OPIEDIR)/scripts:$(PATH)
+export QMAKESPEC=$(QMAKESPECSDIR)/$(patsubst "%",%,$(CONFIG_SPECFILE))
+
+ifdef CONFIG_OPTIMIZATIONS
+export CFLAGS_RELEASE=$(patsubst "%,%,$(CONFIG_OPTIMIZATIONS))
+export CFLAGS_RELEASE:=$(patsubst %",%,$(CFLAGS_RELEASE))
+endif
+
+ifeq ($(STRIP),)
+ ifneq ($(CONFIG_TARGET_X86),)
+ STRIP=strip
+ endif
+ ifneq ($(CONFIG_TARGET_IPAQ),)
+ STRIP=arm-linux-strip
+ endif
+ ifneq ($(CONFIG_TARGET_SHARP),)
+ STRIP=arm-linux-strip
+ endif
+endif