# # GNUmakefile.in # # Main GNUmakefile for the GNUstep GNUmakefile Package. # # Copyright (C) 1997 Free Software Foundation, Inc. # # Author: Scott Christley # # This file is part of the GNUstep Makefile Package. # # This library 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. # # You should have received a copy of the GNU General Public # License along with this library; see the file COPYING.LIB. # If not, write to the Free Software Foundation, # 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # I've thought about using the Makefile package files # to install the GNUmakefile package, a cool little recursion, # but there is nothing to made, and the files get installed # in a special directory, so it was simpler this way. # include config.make include Version # To install everything inside a temporary directory (say as part of # building a binary package - deb or rpm), use something like `make # install special_prefix=/var/tmp/gnustep-make' special_prefix = GNUSTEP_SYSTEM_ROOT = $(special_prefix)@prefix@ GNUSTEP_LOCAL_ROOT = $(special_prefix)@GNUSTEP_LOCAL_ROOT@ GNUSTEP_NETWORK_ROOT = $(special_prefix)@GNUSTEP_NETWORK_ROOT@ srcdir = @srcdir@ exec_prefix = @exec_prefix@ bindir = @bindir@ libdir = @libdir@ includedir = @includedir@ datadir = @datadir@ GNUSTEP_FLATTENED := @GNUSTEP_FLATTENED@ GNUSTEP_TARGET_CPU := @target_cpu@ GNUSTEP_TARGET_OS := @target_os@ GNUSTEP_TARGET_VENDOR := @target_vendor@ GNUSTEP_TARGET_CPU := $(shell ./clean_cpu.sh $(GNUSTEP_TARGET_CPU)) GNUSTEP_TARGET_VENDOR := $(shell ./clean_vendor.sh $(GNUSTEP_TARGET_VENDOR)) GNUSTEP_TARGET_OS := $(shell ./clean_os.sh $(GNUSTEP_TARGET_OS)) GNUSTEP_LIB_COMBO := @ac_cv_library_combo@ ifeq ($(GNUSTEP_FLATTENED),) GNUSTEP_TARGET_DIR = $(GNUSTEP_TARGET_CPU)/$(GNUSTEP_TARGET_OS) GNUSTEP_TARGET_LDIR = $(GNUSTEP_TARGET_DIR)/$(GNUSTEP_LIB_COMBO) else GNUSTEP_TARGET_DIR = . GNUSTEP_TARGET_LDIR = . endif makedir = $(GNUSTEP_SYSTEM_ROOT)/Makefiles tooldir = $(GNUSTEP_SYSTEM_ROOT)/Tools librarydir = $(GNUSTEP_SYSTEM_ROOT)/Libraries INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ PERL = @PERL@ VERTAG = `echo $(GNUSTEP_MAKE_VERSION) | tr '.' '_'` MAKE_FILES = aggregate.make application.make bundle.make service.make \ common.make brain.make java.make jni.make library.make rules.make \ target.make tool.make ctool.make test-library.make names.make \ objc.make test-application.make test-tool.make subproject.make \ palette.make gswapp.make gswbundle.make woapp.make wobundle.make \ documentation.make MediaBook.func executable.template framework.make \ source-distribution.make rpm.make \ spec-rules.template spec-debug-rules.template \ spec-debug-alone-rules.template all: generated-files which_lib$(EXEEXT) which_lib$(EXEEXT): which_lib.c $(CC) @CFLAGS@ -Wall -o $@ $^ install: all $(srcdir)/mkinstalldirs $(GNUSTEP_SYSTEM_ROOT) $(makedir) \ $(makedir)/$(GNUSTEP_TARGET_CPU) \ $(makedir)/$(GNUSTEP_TARGET_DIR) \ $(makedir)/Additional \ $(tooldir) \ $(GNUSTEP_SYSTEM_ROOT)/share \ $(GNUSTEP_SYSTEM_ROOT)/Apps \ $(GNUSTEP_SYSTEM_ROOT)/Libraries/$(GNUSTEP_TARGET_DIR) \ $(GNUSTEP_SYSTEM_ROOT)/Libraries/$(GNUSTEP_TARGET_LDIR) \ $(GNUSTEP_SYSTEM_ROOT)/Headers/$(GNUSTEP_TARGET_DIR) \ $(GNUSTEP_SYSTEM_ROOT)/Tools/$(GNUSTEP_TARGET_DIR) \ $(GNUSTEP_SYSTEM_ROOT)/Tools/$(GNUSTEP_TARGET_LDIR) \ $(GNUSTEP_SYSTEM_ROOT)/Library \ $(GNUSTEP_SYSTEM_ROOT)/Library/Colors \ $(GNUSTEP_SYSTEM_ROOT)/Library/PostScript \ $(GNUSTEP_SYSTEM_ROOT)/Library/Services \ $(GNUSTEP_SYSTEM_ROOT)/Documentation/Developer \ $(GNUSTEP_SYSTEM_ROOT)/Documentation/User \ $(GNUSTEP_SYSTEM_ROOT)/Documentation/info \ $(GNUSTEP_SYSTEM_ROOT)/Documentation/man \ $(GNUSTEP_LOCAL_ROOT) \ $(GNUSTEP_LOCAL_ROOT)/Users \ $(GNUSTEP_LOCAL_ROOT)/Users/Administrator \ $(GNUSTEP_NETWORK_ROOT) $(INSTALL_PROGRAM) -m 755 which_lib$(EXEEXT) $(makedir)/$(GNUSTEP_TARGET_DIR) for f in config.guess config.sub install-sh mkinstalldirs \ GNUstep.sh MediaBook.sh clean_cpu.sh clean_os.sh \ clean_vendor.sh cpu.sh \ ld_lib_path.sh os.sh transform_paths.sh vendor.sh \ rootinstall.sh rootuninstall.sh GNUstep.csh \ ld_lib_path.csh ; do \ $(INSTALL_PROGRAM) -m 755 $$f $(makedir); \ done $(INSTALL_PROGRAM) -m 755 openapp $(tooldir); \ $(INSTALL_PROGRAM) -m 755 debugapp $(tooldir); \ $(INSTALL_PROGRAM) -m 755 opentool $(tooldir); \ for f in $(MAKE_FILES); do \ $(INSTALL_DATA) $$f $(makedir); \ done $(INSTALL_DATA) config.site $(GNUSTEP_SYSTEM_ROOT)/share $(INSTALL_DATA) config.make $(makedir)/$(GNUSTEP_TARGET_DIR) uninstall: rm -f $(makedir)/$(GNUSTEP_TARGET_DIR)/which_lib$(EXEEXT) for f in config.guess config.sub install-sh mkinstalldirs \ GNUstep.sh MediaBook.sh clean_cpu.sh clean_os.sh \ clean_vendor.sh cpu.sh ld_lib_path.sh os.sh \ transform_paths.sh vendor.sh \ rootinstall.sh rootuninstall.sh \ GNUstep.csh ld_lib_path.csh ; do \ rm -f $(makedir)/$$f; \ done rm -f $(tooldir)/openapp; \ rm -f $(tooldir)/debugapp; \ rm -f $(tooldir)/opentool; \ for f in $(MAKE_FILES); do \ rm -f $(makedir)/$$f; \ done rm -f $(GNUSTEP_SYSTEM_ROOT)/share/config.site rm -f $(makedir)/$(GNUSTEP_TARGET_DIR)/config.make clean: rm -f *~ which_lib$(EXEEXT) distclean: clean rm -f GNUmakefile config.make rm -f config.cache config.log config.status cvs-tag: cvs -z3 rtag make-$(VERTAG) make cvs-dist: cvs -z3 export -r make-$(VERTAG) make mv make gnustep-make-$(GNUSTEP_MAKE_VERSION) tar --gzip -cf gnustep-make-$(GNUSTEP_MAKE_VERSION).tar.gz gnustep-make-$(GNUSTEP_MAKE_VERSION) rm -rf gnustep-make-$(GNUSTEP_MAKE_VERSION) cvs-snapshot: cvs -z3 export -D now make mv make gnustep-make-$(GNUSTEP_MAKE_VERSION) tar --gzip -cf gnustep-make-$(GNUSTEP_MAKE_VERSION).tar.gz gnustep-make-$(GNUSTEP_MAKE_VERSION) rm -rf gnustep-make-$(GNUSTEP_MAKE_VERSION) tgz: @echo "Generating gnustep-make-$(GNUSTEP_MAKE_VERSION).tar.gz"; \ echo "in the parent directory..."; \ SNAPSHOT_DIR=`basename $$(pwd)`; \ cd ..; \ if [ "$$SNAPSHOT_DIR" != "gnustep-make-$(GNUSTEP_MAKE_VERSION)" ]; then \ mv $$SNAPSHOT_DIR gnustep-make-$(GNUSTEP_MAKE_VERSION); \ fi; \ tar cfz gnustep-make-$(GNUSTEP_MAKE_VERSION).tar.gz gnustep-make-$(GNUSTEP_MAKE_VERSION); \ if [ "$$SNAPSHOT_DIR" != "gnustep-make-$(GNUSTEP_MAKE_VERSION)" ]; then \ mv gnustep-make-$(GNUSTEP_MAKE_VERSION) $$SNAPSHOT_DIR; \ fi; test-RPM_TOPDIR: @(if [ -z "$(RPM_TOPDIR)" ]; then \ echo "Error - RPM_TOPDIR variable not set."; \ echo "You need to set it to the top of your rpm directory tree"; \ exit 1; \ fi) rpm: test-RPM_TOPDIR tgz cp ../gnustep-make-$(GNUSTEP_MAKE_VERSION).tar.gz $(RPM_TOPDIR)/SOURCES/ cp gnustep-make.spec $(RPM_TOPDIR)/SPECS/ cd $(RPM_TOPDIR)/SPECS/ rpm -ba gnustep-make.spec generated-files: GNUmakefile GNUstep.sh GNUstep.csh config.h config.make debugapp openapp opentool gnustep-make.spec executable.template GNUmakefile: GNUmakefile.in config.status $(SHELL) config.status GNUstep.sh: GNUstep.sh.in $(SHELL) config.status GNUstep.csh: GNUstep.csh.in $(SHELL) config.status config.h: config.h.in $(SHELL) config.status config.make: config.make.in $(SHELL) config.status debugapp: debugapp.in $(SHELL) config.status openapp: openapp.in $(SHELL) config.status opentool: opentool.in $(SHELL) config.status gnustep-make.spec: gnustep-make.spec.in $(SHELL) config.status executable.template: executable.template.in $(SHELL) config.status