view Makefile.in @ 2391:a7bfb97fd80e

iOS: Switch to using UIApplicationMain() in dw_main(). This is not a long term solution since it never exits and has some other limitations, but apparently it does some setup we were not doing. We are now getting auto constraint errors due to conflicts with the DW layout engine. Some changes to avoid these but still getting them... so more work needed.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Thu, 25 Mar 2021 05:30:52 +0000
parents 9f336ce185fd
children 8a12b4caf6b9
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) dwtest $(prefix)/bin; \
	$(INSTALL) org.dbsoft.dwindows.dwtest.desktop $(prefix)/share/applications/

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

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))