INSTALL_VERSION = 6.0 STRIP = strip DEBUG = -g CC = egcs OPTS = -O CFLAGS = $(DEBUG) $(OPTS) -Wall -DINSTALL_VERSION=\"$(INSTALL_VERSION)\" -D_GNU_SOURCE=1 -I /usr/include/rpm -DUSE_ALT_DNS=1 LDFLAGS = $(DEBUG) CRYPT=/usr/lib/libcrypt.a ARCH := $(patsubst i%86,i386,$(shell uname -m)) ARCH := $(patsubst sparc%,sparc,$(ARCH)) ifeq (alpha,$(ARCH)) ARCHOBJS2 = kbd.o earlymethods.o install.o milo.o otherinsmod.o CFLAGS += -DSINGLE_INSTALL else ifeq (i386,$(ARCH)) ARCHOBJS2 = lilo.o kbd.o otherinsmod.o ARCHOBJS1 = kbd.o otherinsmod.o ARCHPROGS = install local-install else # SPARC ARCHOBJS2 = lilo.o kbd.o earlymethods.o install.o otherinsmod.o CFLAGS += -DSINGLE_INSTALL endif endif OBJS = net.o log.o nfsmount.o mount_xdr.o windows.o devices.o \ scsi.o fs.o run.o bootpc.o dns.o kickstart.o lang.o cdrom.o \ cpio.o OBJS1 = earlymethods.o install.o ftp.o url.o urlmethod.o hd.o $(ARCHOBJS1) ALL1 = $(OBJS) $(OBJS1) NET1 = earlymethods.o ftp.o url.o urlmethod.o net.o install.o devices.o \ nfsmount.o mount_xdr.o fs.o LOCAL1 = $(filter-out $(NET1),$(ALL1)) \ localearly.o localdevices.o localinstall.o localfs.o OBJS2 = doit.o pkgs.o setup.o hd.o latemethods.o install2.o ftp.o url.o \ upgrade.o hash.o commands.o printercfg.o gettext.o hints.o \ mkswap.o mtab.o syslog.o ls.o idmap.o fsedit.o urlmethod.o smp.o \ $(ARCHOBJS2) ALLOBJS = $(OBJS) $(OBJS1) $(OBJS2) PROGS = $(ARCHPROGS) install2 genhdlist dmphdlist readmap mapshdr snarffont SOURCES = $(subst .o,.c,$(OBJS)) SOURCES1 = $(subst .o,.c,$(OBJS1)) SOURCES2 = $(subst .o,.c,$(OBJS2)) EARLYSECOND = fsedit.c latemethods.c mtab.c mkswap.c install2.c mkswap.c LATESECOND = $(filter-out $(EARLYSECOND),$(SOURCES2)) ALLSOURCES = $(SOURCES) $(SOURCES1) $(SOURCES2) #--------------- INST1LIBS:=-lpopt /usr/lib/libnewt.a /usr/lib/libslang.a \ /usr/lib/libm.a /usr/lib/libresolv.a modutils/insmod/libmodutils.a \ modutils/obj/libobj.a modutils/util/libutil.a libfdisk/libfdisk.a INST2LIBS:=-lpopt /usr/lib/libdb1.a /usr/lib/libz.a \ INST1DEPLIBS= INST2DEPLIBS=./libfdisk/libfdisk.a SUBDIRS=libfdisk ifeq (i386,$(ARCH)) STATIC=-static INST1LIBS+=/usr/lib/libm.a /usr/lib/libresolv.a /usr/lib/libnewt.a \ /usr/lib/libslang.a INST2LIBS+=/usr/lib/libm.a /usr/lib/libresolv.a /usr/lib/libnewt.a \ /usr/lib/libslang.a INST1DEPLIBS+=./pci-probing/libpciprobe.a ./pcmcia-probing/libpcmciaprobe.a \ modutils/insmod/libmodutils.a modutils/obj/libobj.a \ modutils/util/libutil.a INST2DEPLIBS+=./pci-probing/libpciprobe.a \ modutils/insmod/libmodutils.a modutils/obj/libobj.a \ modutils/util/libutil.a SUBDIRS+=modutils pci-probing pcmcia-probing else ifeq (alpha,$(ARCH)) STATIC= INST1DEPLIBS+= INST2DEPLIBS+=/usr/lib/libslang.a /usr/lib/libnewt.a /usr/lib/libresolv.a \ pci-probing/libpciprobe.a modutils/insmod/libmodutils.a \ modutils/obj/libobj.a modutils/util/libutil.a SUBDIRS+=modutils pci-probing #LDFLAGS+=-lnewt -lslang -lm -lresolv else ifeq (sparc,$(ARCH)) STATIC= INST2LIBS+=/usr/lib/libm.a /usr/lib/libresolv.a /usr/lib/libnewt.a \ /usr/lib/libslang.a INST2DEPLIBS+=./pci-probing/libpciprobe.a ./sbus-probing/libsbusprobe.a \ modutils/insmod/libmodutils.a modutils/obj/libobj.a \ modutils/util/libutil.a SUBDIRS+=modutils pci-probing sbus-probing endif endif STATIC= endif INST1LIBS+=/usr/lib/libz.a -lrpm ifeq (.depend,$(wildcard .depend)) TARGET=subdirs $(PROGS) else TARGET=depend subdirs $(PROGS) endif #LANGS = cs fi no tr ro sr sk de da se it pl in fr hu LANGS = no ro sk de it in hu ru uk_UA fr is TR1 = $(patsubst %,tr/%1.tr,$(LANGS)) TR2 = $(patsubst %,tr/%2.tr,$(LANGS)) TR3 = $(patsubst %,tr/%3.tr,$(LANGS)) all: $(TARGET) translations: install1.tr install2.tr install3.tr localdevices.o: devices.c $(CC) $(CFLAGS) -DDISABLE_NETWORK=1 -c -o localdevices.o devices.c localearly.o: earlymethods.c $(CC) $(CFLAGS) -DDISABLE_NETWORK=1 -c -o localearly.o earlymethods.c localinstall.o: install.c $(CC) $(CFLAGS) -DDISABLE_NETWORK=1 -c -o localinstall.o install.c localfs.o: fs.c $(CC) $(CFLAGS) -DDISABLE_NETWORK=1 -c -o localfs.o fs.c local-install: $(LOCAL1) $(INST1DEPLIBS) $(CC) $(STATIC) $(LDFLAGS) -o local-install $^ $(INST1LIBS) $(INST1DEPLIBS) install: $(OBJS) $(OBJS1) $(INST1DEPLIBS) $(CC) $(STATIC) $(LDFLAGS) -o install $^ $(INST1LIBS) $(INST1DEPLIBS) install2: $(OBJS) $(OBJS2) /usr/lib/librpm.a $(INST2DEPLIBS) $(CC) $(LDFLAGS) -o install2 $^ $(INST2LIBS) $(CRYPT) $(INST2DEPLIBS) subdirs: for d in $(SUBDIRS); do \ (cd $$d; $(MAKE)) \ || case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac;\ done && test -z "$$fail" tr/%3.tr: po/%.po install3.po msgmerge $< install3.po | ./simplemot > $@ tr/%2.tr: po/%.po install2.po msgmerge $< install2.po | ./simplemot > $@ tr/%1.tr: po/%.po install1.po msgmerge $< install1.po | ./simplemot > $@ install1.tr: $(TR1) (cd tr; ls *1.tr | cpio --quiet -Hcrc -o | gzip -9) > $@ install2.tr: $(TR2) (cd tr; ls *2.tr | cpio --quiet -Hcrc -o | gzip -9) > $@ install3.tr: $(TR3) (cd tr; ls *3.tr | cpio --quiet -Hcrc -o | gzip -9) > $@ .PHONY: update-po update-po: $(MAKE) $@ -C po # install1.po and install2.po aren't strictally necessary, but they let # us move the install2 specific translations off the first disk. # # We split into an install3 as well for now. It makes install2.tr smaller, # which lets it fit onto the supp disk easier , and install3.tr is # brought over frm the installation media. We should get rid of the install3 # tr hack altogether, and completely setup the installation media in the # first stage. install1.po: $(SOURCES) $(SOURCES1) xgettext --default-domain=install1 --add-comments \ --keyword=_ --keyword=N_ $(SOURCES) $(SOURCES1) install2.po: $(EARLYSECOND) xgettext --default-domain=install2 --add-comments \ --keyword=_ --keyword=N_ $(EARLYSECOND) install3.po: $(LATESECOND) xgettext --default-domain=install3 --add-comments \ --keyword=_ --keyword=N_ $(LATESECOND) ftp.o: ftp.c $(CC) $(CFLAGS) -DHAVE_CONFIG_H=1 -DHAVE_ALLOCA_H=1 -DHAVE_NETINET_IN_SYSTM_H=1 -c $< url.o: url.c $(CC) $(CFLAGS) -DHAVE_CONFIG_H=1 -DHAVE_ALLOCA_H=1 -DHAVE_NETINET_IN_SYSTM_H=1 -c $< genhdlist: /usr/lib/librpm.a gettext.o genhdlist.o $(CC) -o genhdlist genhdlist.o -lrpm -lz -static readmap: readmap.o $(CC) -o readmap readmap.o mapshdr: mapshdr.o $(CC) -o mapshdr mapshdr.o snarffont: snarffont.o $(CC) -o snarffont snarffont.o dmphdlist: /usr/lib/librpm.a gettext.o dmphdlist.o $(CC) -o dmphdlist dmphdlist.o -lrpm -lz ugtest: ugtest.o pkgs.o upgrade.o log.o windows.o hash.o kickstart.o $(CC) $(LDFLAGS) -o ugtest $^ $(INST2LIBS) -lrpm -ldb -lz clean: rm -f *.o .depend # get subdirectories as well for d in $(SUBDIRS); do \ (cd $$d; $(MAKE) clean) \ || case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac;\ done && test -z "$$fail" realclean: clean rm -f $(PROGS) *~ ifeq (i386,$(ARCH)) installit: translations mkdir -p ../trees/local/sbin mkdir -p ../trees/network/sbin mkdir -p ../trees/initrd/bin mkdir -p ../trees/initrd/etc mkdir -p ../trees/supp/usr/bin mkdir -p ../trees/supp/usr/etc mkdir -p ../../../RedHat/base mkdir -p ../../../RedHat/instimage/usr/bin mkdir -p ../../../RedHat/instimage/usr/etc rm -f ../../../RedHat/instimage/usr/bin/install2 cp install2 ../../../RedHat/instimage/usr/bin cp install2 install2.foo strip install2.foo bzip2 -9 < install2.foo > ../trees/supp/usr/bin/install2.bz2 rm -f ../../../RedHat/instimage/usr/etc/install2.tr cp install2.tr ../../../RedHat/instimage/usr/etc cp install2.tr ../trees/supp/usr/etc/install2.tr rm -f ../../../RedHat/base/install3.tr cp install3.tr ../../../RedHat/base/install3.tr install -s install ../trees/network/sbin/install install -s local-install ../trees/local/sbin/install cp -f install1.tr ../trees/initrd/etc/install1.tr else ifeq (alpha,$(ARCH)) installit: translations mkdir -p ../trees/ramdisk/bin mkdir -p ../trees/ramdisk/etc mkdir -p ../../../RedHat/base rm -f ../trees/ramdisk/bin/install rm -f ../trees/ramdisk/bin/install2 rm -f ../trees/ramdisk/etc/install1.tr rm -f ../trees/ramdisk/etc/install2.tr ln -s install2 ../trees/ramdisk/bin/install install -s install2 ../trees/ramdisk/bin/install2 install install1.tr ../trees/ramdisk/etc/install1.tr install install2.tr ../trees/ramdisk/etc/install2.tr rm -f ../../../RedHat/base/install3.tr install install3.tr ../../../RedHat/base/install3.tr else ifeq (sparc,$(ARCH)) installit: translations mkdir -p ../trees/ramdisk/bin mkdir -p ../trees/ramdisk/etc mkdir -p ../../../RedHat/base mkdir -p ../../../sbin rm -f ../trees/ramdisk/bin/install rm -f ../trees/ramdisk/bin/install2 rm -f ../trees/ramdisk/etc/install1.tr rm -f ../trees/ramdisk/etc/install2.tr install -s install2 ../trees/ramdisk/bin/install2 ln -s install2 ../trees/ramdisk/bin/install install install1.tr ../trees/ramdisk/etc/install1.tr install install2.tr ../trees/ramdisk/etc/install2.tr rm -f ../../../RedHat/base/install3.tr install install3.tr ../../../RedHat/base/install3.tr endif endif endif depend: $(CPP) $(CFLAGS) -DHAVE_CONFIG_H -M $(ALLSOURCES) > .depend co: co RCS/*,v ifeq (.depend,$(wildcard .depend)) include .depend endif