Mercurial > dwindows
view Makefile.in @ 2757:b91bc30d0e4a
GTK4: dw_menu_popup() coordinates are relative to the parent window.
The coordinates in the context events in GTK4 had been relative to the
container or tree widget, causing the menu to popup in offset locations.
Added a function to convert from the widget coordinate to the window.
The events now pass window relative coordinates so when passed to
dw_menu_popup() the menu appears in about the right location.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 03 Jan 2022 15:45:15 +0000 |
parents | 2312b315ec20 |
children | cfe1367ce58a |
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)/license.txt $(srcdir)/makefile.* $(srcdir)/readme.txt $(srcdir)/*.c $(srcdir)/dw.h $(srcdir)/dwcompat.h \ $(srcdir)/win/*.def $(srcdir)/os2/*.def $(srcdir)/install.sh $(srcdir)/*.in $(srcdir)/configure \ $(srcdir)/ac*.m4 $(srcdir)/dwindows-config.1 $(srcdir)/Version \ $(srcdir)/gtk/*.c $(srcdir)/gtk/*.cpp $(srcdir)/win/*.c $(srcdir)/os2/*.c $(srcdir)/win/*.txt $(srcdir)/os2/*.txt \ $(srcdir)/gtk/*.xpm $(srcdir)/win/*.ico $(srcdir)/os2/*.ico $(srcdir)/mac/*.png \ $(srcdir)/mac/Info.plist $(srcdir)/mac/PkgInfo $(srcdir)/mac/*.m $(srcdir)/mac/finishup.sh \ $(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)/license.txt $(SRCDIR)/makefile.* $(SRCDIR)/readme.txt $(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/*.manifest $(SRCDIR)/win/*.txt $(SRCDIR)/win/*.def $(SRCDIR)/win/*.ico $(SRCDIR)/win/*.rc \ $(SRCDIR)/os2/*.c $(SRCDIR)/os2/*.txt $(SRCDIR)/os2/*.def $(SRCDIR)/os2/*.ico \ $(SRCDIR)/gtk/*.c $(SRCDIR)/gtk3/*.c $(SRCDIR)/gtk/*.xpm \ $(SRCDIR)/mac/Info.plist $(SRCDIR)/mac/PkgInfo $(SRCDIR)/mac/*.m $(SRCDIR)/mac/finishup.sh $(SRCDIR)/mac/*.png \ $(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))