# Copyright (c) 2000, Red Hat, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # A copy of the GNU General Public License can be found at # http://www.gnu.org/ # # Written by Christopher Faylor # # Makefile for Cygwin installer SHELL := @SHELL@ srcdir := @srcdir@ VPATH := @srcdir@ prefix := @prefix@ exec_prefix := @exec_prefix@ bindir := @bindir@ etcdir := $(exec_prefix)/etc program_transform_name := @program_transform_name@ INSTALL := @INSTALL@ INSTALL_PROGRAM := @INSTALL_PROGRAM@ INSTALL_DATA := @INSTALL_DATA@ EXEEXT := @EXEEXT@ EXEEXT_FOR_BUILD := @EXEEXT_FOR_BUILD@ CC := @CC@ CC_FOR_TARGET := $(CC) CFLAGS := @CFLAGS@ -nostdinc CXXFLAGS := @CXXFLAGS@ -fno-exceptions -nostdinc++ -fno-rtti WINDRES := @WINDRES@ OBJCOPY := @OBJCOPY@ include $(srcdir)/../Makefile.common MINGW_INCLUDES := -I. -I$(srcdir) -I$(mingw_source)/include -I$(w32api_include) MINGW_CXXFLAGS := -MMD $(CXXFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows MINGW_CFLAGS := -MMD $(CFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows ZLIB := zlib/libzcygw.a libmingw32.a := $(mingw_build)/libmingw32.a libuser32 := $(w32api_lib)/libuser32.a libkernel32 := $(w32api_lib)/libkernel32.a ALL_DEP_LDLIBS := $(ZLIB) $(w32api_lib)/libole32.a $(w32api_lib)/libwsock32.a \ $(w32api_lib)/libnetapi32.a $(w32api_lib)/libadvapi32.a \ $(w32api_lib)/libuuid.a $(libkernel32) $(w32api_lib)/libuser32.a \ $(libmingw32) ALL_LDLIBS := ${patsubst $(mingw_build)/lib%.a,-l%,\ ${patsubst $(w32api_lib)/lib%.a,-l%,\ ${filter-out $(libmingw32),\ ${filter-out $(libuser32),\ ${filter-out $(libkernel32), $(ALL_DEP_LDLIBS)}}}}} ALL_LDFLAGS := ${filter-out -I%, \ ${filter-out -W%, \ -B$(w32api_lib)/ -B${mingw_build}/ $(MINGW_CFLAGS) $(LDFLAGS)}} PROGS := setup$(EXEEXT) OBJS = \ autoload.o \ choose.o \ concat.o \ desktop.o \ dialog.o \ diskfull.o \ download.o \ find.o \ fromcwd.o \ geturl.o \ hash.o \ ini.o \ inilex.o \ iniparse.o \ install.o \ log.o \ main.o \ mkdir.o \ mklink2.o \ mount.o \ msg.o \ net.o \ netio.o \ nio-ie5.o \ nio-file.o \ nio-ftp.o \ nio-http.o \ other.o \ postinstall.o \ res.o \ root.o \ simpsock.o \ site.o \ source.o \ splash.o \ state.o \ tar.o \ version.o \ $E .SUFFIXES: .NOEXPORT: .PHONY: all install clean realclean all: Makefile $(PROGS) setup$(EXEEXT): $(OBJS) $(ALL_DEP_LDLIBS) ifdef VERBOSE $(CC) $(MINGW_CXXFLAGS) -o $@ ${filter-out $(ALL_DEP_LIBS),$^} else @echo $(CC) ... -o $@ $(OBJS) @$(CC) $(MINGW_CXXFLAGS) -o $@ ${filter-out $(ALL_DEP_LIBS),$^} $(ALL_LDFLAGS) $(ALL_LDLIBS) endif @chmod a-x $@ clean: rm -f *.o *.rc $(PROGS) $(MAKE) -C zlib clean realclean: clean rm -f Makefile config.cache install: all $(SHELL) $(updir1)/mkinstalldirs $(bindir) $(etcdir) for i in $(PROGS) ; do \ n=`echo $$i | sed '$(program_transform_name)'`; \ $(INSTALL_PROGRAM) $$i $(bindir)/$$n; \ done $(libmingw32): $(mingw_build)/Makefile @$(MAKE) -C $(@D) $(@F) $(ZLIB): zlib/Makefile $(MAKE) -C $(@D) $(@F) CC="$(CC)" CFLAGS='$(MINGW_CFLAGS)' version.c : $(srcdir)/ChangeLog Makefile V=`grep '^\$$Revision.*' $(srcdir)/ChangeLog \ | sed -e 's/\$$Revision:* *//' \ -e 's/ *$$.*//'` ;\ echo "char *version = \"$$V\";" > version.tmp mv version.tmp version.c %.o: %.rc ifdef VERBOSE $(WINDRES) --include-dir $(srcdir) -o $@ $< else @echo $(WINDRES) -o $@ $(