author | wimpie <wimpie> | 2004-04-02 18:34:55 (UTC) |
---|---|---|
committer | wimpie <wimpie> | 2004-04-02 18:34:55 (UTC) |
commit | 1d6b2100209fb63e737100c9f8f576bb26534e96 (patch) (side-by-side diff) | |
tree | a622ace52548366a43f6a4712a9da2d95a81b6c5 | |
parent | 4ea2f227d3fb0d9591bb4f18555420ac47f3397d (diff) | |
download | opie-1d6b2100209fb63e737100c9f8f576bb26534e96.zip opie-1d6b2100209fb63e737100c9f8f576bb26534e96.tar.gz opie-1d6b2100209fb63e737100c9f8f576bb26534e96.tar.bz2 |
Added THREAD config flag (for compile agains threaded qt)
Added ipkg-mt target for packaging targets to -mt packages
speedup of ipkg by using bash substitution instead of grep/sed
-rw-r--r-- | Makefile | 23 | ||||
-rw-r--r-- | Rules.make | 7 |
2 files changed, 26 insertions, 4 deletions
@@ -1,90 +1,105 @@ #!/usr/bin/make -f export TOPDIR:=$(OPIEDIR) include $(TOPDIR)/Vars.make ifneq ($(wildcard $(TOPDIR)/Vars.local),) include $(TOPDIR)/Vars.local endif noconfig_targets := xconfig menuconfig config oldconfig randconfig \ defconfig allyesconfig allnoconfig allmodconfig \ clean-configs $(TOPDIR)/scripts/subst $(TOPDIR)/scripts/filesubst \ ipks 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/pim/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/config.in $(TOPDIR)/noncore/todayplugins/config.in $(TOPDIR)/examples/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 # # The IPK creation is a very slow process. If you want to only create some # IPKs, e.g. the ones in library, then do # make ipks IPK_START=library # and then only the *.control files in this directory will be processed ipks: $(OPIEDIR)/scripts/subst $(OPIEDIR)/scripts/filesubst FORCE $(TOPDIR)/.config @find $(OPIEDIR)/$(IPK_START) -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,'`; \ + prerm=`echo $${ctrl/.control/.prerm}`; \ + preinst=`echo $${ctrl/.control/.preinst}`; \ + postrm=`echo $${ctrl/.control/.postrm}`; \ + postinst=`echo $${ctrl/.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 ) +ipks-mt: $(OPIEDIR)/scripts/subst $(OPIEDIR)/scripts/filesubst FORCE $(TOPDIR)/.config + @> $(OPIEDIR)/AllThreadedPackages + @find $(OPIEDIR)/ -type f -name \*.control | grep -v -- "-mt" | while read ctrl ; do \ + grep "Package[ ]*:" $${ctrl} | sed "s+Package[ ]*:[ ]*++"; \ + done | sort | uniq >> $(OPIEDIR)/AllThreadedPackages + @find $(OPIEDIR)/ -type f -name \*.control | while read ctrl ; do \ + echo "Converting $$ctrl to -mt package"; \ + nctrl=`$(OPIEDIR)/scripts/tothreaded $$ctrl $(OPIEDIR)/AllThreadedPackages`; \ + echo "Building ipk of $$ctrl"; \ + [ -n $$nctrl ] && cd $(OPIEDIR) && $(OPIEDIR)/scripts/mkipkg --subst=$(OPIEDIR)/scripts/subst --filesubst=$(OPIEDIR)/scripts/filesubst --control=$$nctrl --prerm=$${nctrl/\.control$$/.prerm/} --preinst=$${nctrl/\.control$$/.preinst/} --postrm=$${nctrl/\.control$$/.postrm/} --postinst=$${nctrl/\.control$$/.postinst/} --strip=$(STRIP) $(OPIEDIR); \ + done + @rm -f $(OPIEDIR)/AllThreadedPackages + +FORCE: + $(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 export ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),) export include-config := 1 -include $(TOPDIR)/.config -include $(TOPDIR)/.depends endif -include $(TOPDIR)/.config.cmd SUBDIRS = $(subdir-y) all clean install ipk: $(SUBDIRS) lupdate lrelease: @for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done opie-lupdate opie-lrelease messages: @for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done; # from kde qtmessages: cd $(QTDIR)/src ; \ sed -e "s,#define,," xml/qxml.cpp > qxml_clean.cpp ;\ @@ -1,66 +1,73 @@ .phony: force force: $(configs) : $(call makecfg,$@) $(TOPDIR)/gen.pro : $(TOPDIR)/.config echo > $@ +# added for threaded version +ifneq ($(CONFIG_THREADED),) + echo CONFIG += thread >> $@ +else + echo CONFIG -= thread >> $@ +endif ifneq ($(CONFIG_DEBUG),) echo CONFIG += debug >> $@ echo CONFIG -= release >> $@ echo DEFINES += "QT_COMPONENT_DEBUG=2" >> $@ echo DEFINES += QT_DEBUG >> $@ else echo CONFIG -= debug >> $@ echo CONFIG += release >> $@ echo DEFINES += "OPIE_NO_DEBUG" >> $@ endif + ifeq ($(filter 3.%,$(QTE_VERSION)),) # not qt3 echo CONFIG -= qt3 >> $@ else echo CONFIG += qt3 >> $@ endif ifneq ($(CONFIG_QUICK_LAUNCH),) echo contains\( CONFIG, quick-app \) \{ >> $@ echo CONFIG -= quick-app >> $@ echo CONFIG += quick-app-lib >> $@ echo QUICKLAUNCH_PATH = $(CONFIG_QUICKLAUNCH_PATH) >> $@ echo \} >> $@ else echo contains\( CONFIG, quick-app \) \{ >> $@ echo CONFIG -= quick-app >> $@ echo CONFIG += quick-app-bin >> $@ echo \} >> $@ endif ifeq ($(CONFIG_SQL_PIM_BACKEND),y) echo ENABLE_SQL_PIM_BACKEND=$(CONFIG_SQL_PIM_BACKEND) >> $@ else echo ENABLE_SQL_PIM_BACKEND=n >> $@ endif ifeq ($(CONFIG_OPIE_NO_OVERRIDE_QT),y) echo CONFIG += no-override >> $@ endif ifeq ($(CONFIG_OPIE_NO_BUILTIN_SHUTDOWN),y) echo DEFINES += OPIE_NO_BUILTIN_SHUTDOWN >> $@ endif ifeq ($(CONFIG_OPIE_NO_BUILTIN_CALIBRATE),y) echo DEFINES += OPIE_NO_BUILTIN_CALIBRATE >> $@ endif ifeq ($(CONFIG_USE_REALTIME_AUDIO_THREAD),y) echo DEFINES += USE_REALTIME_AUDIO_THREAD >> $@ endif ifeq ($(CONFIG_QT_QWS_ALLOW_CLOCK),y) echo DEFINES += QT_QWS_ALLOW_OVERCLOCK >> $@ endif ifeq ($(CONFIG_OPIE_HIGH_RES_SMALL_PHY),y) echo DEFINES += OPIE_HIGH_RES_SMALL_PHY >> $@ endif ifeq ($(CONFIG_OPIE_NEW_ALLOC),y) echo DEFINES += OPIE_NEW_MALLOC >> $@ endif ifeq ($(CONFIG_OPIE_NO_SOUND_PCM_READ_BITS),y) echo DEFINES += OPIE_NO_SOUND_PCM_READ_BITS >> $@ endif echo DEFINES += OPIE_SOUND_FRAGMENT_SHIFT=$(CONFIG_OPIE_SOUND_FRAGMENT_SHIFT) >> $@ echo DEFINES += OPIE_WE_VERSION=$(CONFIG_OPIE_WE_VERSION) >> $@ |