##
## Makefile for Cygwin installer
+## FIXME: integrate autoload.c so that wininet doesn't have to be linked.
+
## For performance and consistency, no built-in rules
.SUFFIXES:
.SUFFIXES: .c .cc .h .o
vpath %.c @srcdir@
vpath %.cc @srcdir@
vpath %.h @srcdir@
-vpath %.l @srcdir@
-vpath %.y @srcdir@
-vpath %.rc @srcdir@
#else
VPATH=@srcdir@
#endif
configuration=@configuration@
moduledir=@moduledir@
sitemoduledir=@sitemoduledir@
-extra_includes=@extra_includes@
-blddir=@blddir@
## ==================== Utility Programs for the Build =================
CC = @CC@
CC_FOR_TARGET = $(CC)
-## -O3 has problems so fix this locally
-LOCALCFLAGS = $(CFLAGS) -O2 -DMINGW $(extra_includes)
+LOCALCFLAGS = $(CFLAGS) -DMINGW
CXXFLAGS = $(LOCALCFLAGS) -fno-exceptions -nostdinc++ -fno-rtti
WINDRES = windres
MINGW_ZLIB_DIR = /usr/local/lib
PROGS = setup.exe
-XEMACS=${blddir}/src/${PROGNAME}
-
-CYGWIN_SIZE=0
-WIN32_SIZE=0
CONFIG_H = ../src/config.h
OBJS = \
- autoload.o \
choose.o \
concat.o \
desktop.o \
ini.o \
inilex.o \
iniparse.o \
- init.o \
install.o \
localdir.o \
log.o \
splash.o \
state.o \
tar.o \
- uninstall.o \
version.o
.SUFFIXES:
setup.exe: $(OBJS)
$(CXX) $(MINGW_CXXFLAGS) -o $@ $(OBJS) \
-lole32 -lwsock32 -lnetapi32 -ladvapi32 \
- -luuid -lkernel32 -luser32 \
+ -luuid -lkernel32 -luser32 -lwininet \
-L$(MINGW_ZLIB_DIR) -lz -lmingw32
@chmod a-x $@
-setup-bin.ini:
- V=`grep '^\$$Revision.*' $(srcdir)/ChangeLog \
- | sed -e 's/\$$Revision:* *//' -e 's/ *$$.*//'` ;\
- $(XEMACS) -batch -vanilla \
- -eval '(setq package-net-cygwin32-binary-size $(CYGWIN_SIZE) \
- package-net-win32-binary-size $(WIN32_SIZE) \
- package-net-setup-version "'$$V'")' \
- -l ${srcdir}/../lisp/package-net.el \
- -f package-net-batch-generate-bin-ini
-
install:
@echo; echo "Installing net setup."
for file in ${INSTALLABLES} ; do \
$(WINDRES) --include-dir $(srcdir) -o $@ $<
%.o: %.c
- $(CC) $(MINGW_CFLAGS) -c -o $@ $<
+ $(CC) $(MINGW_CFLAGS) -c -o $@ ${srcdir}/$<
%.o: %.cc
- $(CC) $(MINGW_CXXFLAGS) -c -o $@ $<
+ $(CC) $(MINGW_CXXFLAGS) -c -o $@ ${srcdir}/$<
iniparse.c iniparse.h : iniparse.y
bison -d -o iniparse.c $(srcdir)/iniparse.y
.PHONY: mostlyclean clean distclean realclean extraclean
mostlyclean:
- $(RM) *.o *.i *.ini core $(PROGS)
+ $(RM) *.o *.i core $(PROGS)
clean: mostlyclean
msg.h log.h find.h reginfo.h
concat.o: concat.cc
desktop.o: desktop.cc win32.h resource.h ini.h msg.h state.h concat.h \
- mkdir.h dialog.h version.h port.h reginfo.h
+ mkdir.h dialog.h version.h port.h
dialog.o: dialog.cc win32.h dialog.h msg.h log.h
diskfull.o: diskfull.cc win32.h diskfull.h
download.o: download.cc win32.h resource.h msg.h ini.h dialog.h \
install.o: install.cc win32.h \
resource.h ini.h dialog.h concat.h geturl.h mkdir.h state.h tar.h \
diskfull.h msg.h regedit.h reginfo.h log.h hash.h port.h
-init.o: init.cc win32.h resource.h dialog.h state.h msg.h log.h
-uninstall.o: uninstall.cc win32.h \
- resource.h ini.h dialog.h concat.h geturl.h mkdir.h state.h tar.h \
- diskfull.h msg.h regedit.h reginfo.h log.h hash.h port.h
localdir.o: localdir.cc win32.h dialog.h resource.h state.h msg.h \
concat.h log.h
log.o: log.cc win32.h resource.h msg.h log.h dialog.h state.h concat.h \