Mercurial > dwindows
view Makefile.in @ 2801:b004cc75d574
Android: Remove the _DW_EVENT_THREADING experiment.
While it was more simple to launch a new thread to handle each event, this
approach had numerous drawbacks. No reasonable way to limit the number of
threads or memory consumed. Order of operations problems, the thread
scheduler would control the order in which the events were handled, not the
order of events produced by the UI.
The non-threaded version has been working and stable for a while now even
though it is more complicated for us to maintain our own event queue... this
allows us to make sure the events are handled in order and we can limit the
number of events in tight system resource situations.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sun, 17 Jul 2022 21:03:31 +0000 |
parents | cfe1367ce58a |
children | 8a5131cbbe93 |
line wrap: on
line source
srcdir=@srcdir@ mandir=@mandir@ CC = @CC@ PLATCCFLAGS = @PLATCCFLAGS@ MLFLAGS = -L. include $(srcdir)/Version CCFLAGS = @CFLAGS@ $(PLATCCFLAGS) @ARCH@ -D@DW_DEFINE@ -DBUILD_DLL -DDW_RESOURCES -DVER_REV=$(VER_REV) LFLAGS = @LIBS@ @ARCH@ ARFLAGS = @ARFLAGS@ INSTALL = @INSTALL@ DW_SRC = @DW_SRC@ DW_DIR = @DW_DIR@ INCPATH = -I.. -I. -I$(srcdir) TARGET = @TARGET@ SRCS = $(srcdir)/$(DW_DIR)/$(DW_SRC) BROWSER_OBJECT=@BROWSER_OBJECT@ COMPAT_OBJECT =@COMPAT_OBJECT@ INSTALL_COMPAT=@INSTALL_COMPAT@ INSTALL_TEST =@INSTALL_TEST@ OBJECTS = dw.o $(BROWSER_OBJECT) SRCS2 = $(srcdir)dwcompat.c OBJECTS2= $(COMPAT_OBJECT) TARGET2= @TARGET2@ TARGETS = @TARGETS@ VER_MAJ = $(DW_MAJOR_VERSION) VER_MIN = $(DW_MINOR_VERSION) VER_REV = @SVNVERSION@ SOSUFFIX= @SOSUFFIX@ SONAME= @SONAME@ LIBPREFIX = @LIBPREFIX@ LIBSUFFIX = @LIBSUFFIX@ prefix = $(DESTDIR)@prefix@ SRCDIR=dwindows-$(VER_MAJ).$(VER_MIN) #.SUFFIXES: .c .h #.c.o: # $(CC) -c $(CCFLAGS) $(INCPATH) -o $@ $< # Link flags shared objects SYSCONF_LFLAGS_SHOBJ = @SHAREDFLAG@ # Linking shared libraries # - Build the $(TARGET) library, eg. lib$(TARGET).so.0.0 # - Usually needs to incorporate $(VER_MAJ) and $(VER_MIN) # SYSCONF_LINK_SHLIB = @CC@ SYSCONF_LINK_TARGET_SHARED = @SYSCONF_LINK_TARGET_SHARED@ SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) $(SYSCONF_LFLAGS_SHOBJ) \ -o $(SYSCONF_LINK_TARGET_SHARED) \ $(OBJECTS) $(LFLAGS) $(SONAME); \ rm -f lib$(TARGET).$(SOSUFFIX) lib$(TARGET).$(SOSUFFIX).$(VER_MAJ); \ ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).$(SOSUFFIX); \ ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).$(SOSUFFIX).$(VER_MAJ) SYSCONF_LINK_TARGET_SHARED2 = @SYSCONF_LINK_TARGET_SHARED2@ SYSCONF_LINK_LIB_SHARED2 = $(SYSCONF_LINK_SHLIB) $(SYSCONF_LFLAGS_SHOBJ) \ -o $(SYSCONF_LINK_TARGET_SHARED2) \ $(OBJECTS2) $(LFLAGS); \ rm -f lib$(TARGET2).$(SOSUFFIX) lib$(TARGET2).$(SOSUFFIX).$(VER_MAJ); \ ln -s $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).$(SOSUFFIX); \ ln -s $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).$(SOSUFFIX).$(VER_MAJ) # Linking static libraries # - Build the $(TARGET) library, eg. lib$(TARGET).a # SYSCONF_AR = ar $(ARFLAGS) SYSCONF_LINK_TARGET_STATIC = @SYSCONF_LINK_TARGET_STATIC@ SYSCONF_LINK_LIB_STATIC = rm -f $(SYSCONF_LINK_TARGET_STATIC) ; \ $(SYSCONF_AR) $(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS) ####### Build rules SYSCONF_LINK_TARGET = $(SYSCONF_LINK_TARGET_SHARED) SYSCONF_LINK_LIB = $(SYSCONF_LINK_LIB_SHARED) SYSCONF_LINK_TARGET2 = $(SYSCONF_LINK_TARGET_SHARED2) SYSCONF_LINK_LIB2 = $(SYSCONF_LINK_LIB_SHARED2) all: $(TARGETS) dwtest install: installbase $(INSTALL_COMPAT) $(INSTALL_TEST) installbase: $(SYSCONF_LINK_TARGET) $(INSTALL) -d $(prefix)/include; \ $(INSTALL) -d $(prefix)/lib; \ $(INSTALL) -d $(prefix)/bin; \ $(INSTALL) -d $(prefix)/share/man/man1; \ $(INSTALL) -d $(prefix)/lib/pkgconfig; \ $(INSTALL) $(srcdir)/dw.h $(prefix)/include; \ sed -e 's/@DW_MAJOR_VERSION@/'$(VER_MAJ)'/' -e 's/@DW_MINOR_VERSION@/'$(VER_MIN)'/' -e 's/@DW_SUB_VERSION@/'$(VER_REV)'/' < dwindows-config1 > dwindows-config $(INSTALL) dwindows-config $(prefix)/bin; \ sed -e 's/@VERSION@/'$(VER_MAJ).$(VER_MIN).$(VER_REV)'/' < dwindows1.pc > dwindows.pc $(INSTALL) dwindows.pc $(prefix)/lib/pkgconfig; \ $(INSTALL) $(srcdir)/dwindows-config.1 $(prefix)/share/man/man1; \ cd $(prefix)/share/man/man1; gzip -f -9 dwindows-config.1 $(INSTALL) $(SYSCONF_LINK_TARGET) $(prefix)/lib; \ cd $(prefix)/lib; \ rm -f lib$(TARGET).so lib$(TARGET).so.$(VER_MAJ); \ ln -sf $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).$(SOSUFFIX); \ ln -sf $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).$(SOSUFFIX).$(VER_MAJ) installdwtest: dwtest $(INSTALL) -d $(prefix)/bin; \ $(INSTALL) -d $(prefix)/share/applications; \ $(INSTALL) -d $(prefix)/share/dwtest/gtk; \ $(INSTALL) dwtest $(prefix)/bin; \ $(INSTALL) org.dbsoft.dwindows.dwtest.desktop $(prefix)/share/applications/; \ $(INSTALL) image/test.png $(prefix)/share/dwtest/; \ $(INSTALL) gtk/file.xpm $(prefix)/share/dwtest/gtk; \ $(INSTALL) gtk/folder.xpm $(prefix)/share/dwtest/gtk installdwcompat: $(SYSCONF_LINK_TARGET2) $(INSTALL) -d $(prefix)/lib; \ $(INSTALL) $(SYSCONF_LINK_TARGET2) $(prefix)/lib; \ $(INSTALL) $(srcdir)/dwcompat.h $(prefix)/include; \ $(INSTALL) $(srcdir)/dwconfig.h $(prefix)/include; \ cd $(prefix)/lib; \ rm -f lib$(TARGET2).$(SOSUFFIX) lib$(TARGET2).$(SOSUFFIX).$(VER_MAJ); \ ln -sf $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).$(SOSUFFIX); \ ln -sf $(SYSCONF_LINK_TARGET_SHARED2) lib$(TARGET2).$(SOSUFFIX).$(VER_MAJ) uninstall: rm -f $(prefix)/lib/lib$(TARGET2).$(SOSUFFIX).$(VER_MAJ) rm -f $(prefix)/lib/lib$(TARGET2).$(SOSUFFIX) rm -f $(prefix)/lib/lib$(TARGET2).$(SOSUFFIX).$(VER_MAJ).$(VER_MIN) rm -f $(prefix)/lib/lib$(TARGET).$(SOSUFFIX).$(VER_MAJ) rm -f $(prefix)/lib/lib$(TARGET).$(SOSUFFIX) rm -f $(prefix)/lib/lib$(TARGET).$(SOSUFFIX).$(VER_MAJ).$(VER_MIN) rm -f $(prefix)/lib/pkgconfig/dwindows.pc rm -f $(prefix)/bin/dwindows-config rm -f $(prefix)/bin/dwtest rm -f $(prefix)/include/dwcompat.h rm -f $(prefix)/include/dwconfig.h rm -f $(prefix)/include/dw.h rm -f $(prefix)/share/applications/org.dbsoft.dwindows.dwtest.desktop rm -f $(prefix)/share/man/man1/dwindows-config.1.gz rm -f $(prefix)/share/dwtest/test.png rm -f $(prefix)/share/dwtest/gtk/file.xpm rm -f $(prefix)/share/dwtest/gtk/folder.xpm deb: dist -rm -fr tmp -mkdir tmp (cd tmp;tar zxvf ../../$(srcdir)/$(SRCDIR).tar.gz;cd $(SRCDIR);dpkg-buildpackage -rfakeroot;cd ..;ls -l) distclean: clean rm -f config.status config.log dwconfig.h rm -f dwindows-config dwindows-config1 dwindows.pc dwindows1.pc rm -f org.dbsoft.dwindows.dwtest.desktop rm -f Makefile clean: rm -f *.$(SOSUFFIX) rm -f *.$(SOSUFFIX).* rm -f *.o rm -f *~ rm -f *.a rm -f $(DW_DIR)/*.o rm -f dwtest rm -rf dwtest.app $(SYSCONF_LINK_TARGET2): $(OBJECTS2) $(SYSCONF_LINK_LIB2) $(SYSCONF_LINK_TARGET): $(OBJECTS) $(SYSCONF_LINK_LIB) $(SYSCONF_LINK_TARGET_STATIC): $(OBJECTS) $(SYSCONF_LINK_LIB_STATIC) dw.o: $(srcdir)/$(DW_DIR)/$(DW_SRC) $(srcdir)/dw.h $(CC) -c $(INCPATH) $(CCFLAGS) -o $@ $(srcdir)/$(DW_DIR)/$(DW_SRC) browser.o: $(srcdir)/$(DW_DIR)/browser.cpp $(srcdir)/dw.h $(CXX) -c $(INCPATH) $(CCFLAGS) -o $@ $(srcdir)/$(DW_DIR)/browser.cpp dwcompat.o: $(srcdir)/dwcompat.c $(CC) -c $(INCPATH) $(CCFLAGS) -o $@ $(srcdir)/dwcompat.c dwtest.o: $(srcdir)/dwtest.c $(srcdir)/dw.h $(CC) -c $(INCPATH) $(CCFLAGS) -o $@ $(srcdir)/dwtest.c dwtest: dwtest.o $(CC) -o dwtest dwtest.o $(MLFLAGS) -l$(TARGET) $(LFLAGS) -chmod +x $(srcdir)/mac/finishup.sh -$(srcdir)/mac/finishup.sh $(srcdir) zip: zip dwindows$(VER_MAJ)$(VER_MIN).zip $(srcdir)/*.txt $(srcdir)/makefile.* $(srcdir)/*.c $(srcdir)/dw.h $(srcdir)/dwcompat.h \ $(srcdir)/install.sh $(srcdir)/*.in $(srcdir)/configure $(srcdir)/Version \ $(srcdir)/ac*.m4 $(srcdir)/dwindows-config.1 $(srcdir)/config.sub $(srcdir)/config.guess $(srcdir)/image/test.* \ $(srcdir)/win/*.c $(srcdir)/win/*.cpp $(srcdir)/win/*.h $(srcdir)/win/*.ico $(srcdir)/win/*.txt $(srcdir)/win/*.def $(srcdir)/win/*.rc $(srcdir)/win/*.manifest \ $(srcdir)/os2/*.c $(srcdir)/os2/*.ico $(srcdir)/os2/*.txt $(srcdir)/os2/*.def \ $(srcdir)/gtk/*.c $(srcdir)/gtk3/*.c $(srcdir)/gtk4/*.c $(srcdir)/gtk/*.xpm \ $(srcdir)/mac/Info.plist $(srcdir)/mac/PkgInfo $(srcdir)/mac/*.m $(srcdir)/mac/*.sh $(srcdir)/mac/*.png \ $(srcdir)/ios/*.m $(srcdir)/android/*.cpp $(srcdir)/android/*.kt $(srcdir)/platform/*.h \ $(srcdir)/debian/control $(srcdir)/debian/rules $(srcdir)/debian/copyright $(srcdir)/debian/compat $(srcdir)/debian/changelog dist: (cd $(srcdir)/..;ln -sf dwindows $(SRCDIR)) (cd $(srcdir)/..;tar -cvf - $(SRCDIR)/*.txt $(SRCDIR)/makefile.* $(SRCDIR)/*.c $(SRCDIR)/dw.h $(SRCDIR)/dwcompat.h \ $(SRCDIR)/install.sh $(SRCDIR)/*.in $(SRCDIR)/configure $(SRCDIR)/Version \ $(SRCDIR)/ac*.m4 $(SRCDIR)/dwindows-config.1 $(SRCDIR)/config.sub $(SRCDIR)/config.guess $(SRCDIR)/image/test.* \ $(SRCDIR)/win/*.c $(SRCDIR)/win/*.cpp $(SRCDIR)/win/*.h $(SRCDIR)/win/*.txt $(SRCDIR)/win/*.def $(SRCDIR)/win/*.ico $(SRCDIR)/win/*.rc $(SRCDIR)/win/*.manifest \ $(SRCDIR)/os2/*.c $(SRCDIR)/os2/*.ico $(SRCDIR)/os2/*.txt $(SRCDIR)/os2/*.def \ $(SRCDIR)/gtk/*.c $(SRCDIR)/gtk3/*.c $(SRCDIR)/gtk4/*.c $(SRCDIR)/gtk/*.xpm \ $(SRCDIR)/mac/Info.plist $(SRCDIR)/mac/PkgInfo $(SRCDIR)/mac/*.m $(SRCDIR)/mac/*.sh $(SRCDIR)/mac/*.png \ $(SRCDIR)/ios/*.m $(SRCDIR)/android/*.cpp $(SRCDIR)/android/*.kt \ $(SRCDIR)/debian/control $(SRCDIR)/debian/rules $(SRCDIR)/debian/copyright $(SRCDIR)/debian/compat $(SRCDIR)/debian/changelog \ $(SRCDIR)/platform/*.h | gzip > $(SRCDIR).tar.gz ) (cd $(srcdir)/..;rm -f $(SRCDIR))