Browse Source

* obsolete

peter 26 years ago
parent
commit
d46ee39ac1
1 changed files with 0 additions and 663 deletions
  1. 0 663
      install/demo/makefile.fpc

+ 0 - 663
install/demo/makefile.fpc

@@ -1,663 +0,0 @@
-#
-#   $Id$
-#   Copyright (c) 1998 by the Free Pascal Development Team
-#
-#   Common makefile for Free Pascal
-#
-#   See the file COPYING.FPC, included in this distribution,
-#   for details about the copyright.
-#
-#   This program is distributed in the hope that it will be useful,
-#   but WITHOUT ANY WARRANTY; without even the implied warranty of
-#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#
-
-#####################################################################
-# Force default settings
-#####################################################################
-
-# Latest release version
-override RELEASEVER:=0.99.9
-
-#####################################################################
-# Autodetect OS (Linux or Dos or Windows NT)
-# define inlinux when running under linux
-# define inWinNT when running under WinNT
-#####################################################################
-
-PWD=$(strip $(wildcard $(addsuffix /pwd.exe,$(subst ;, ,$(PATH)))))
-ifeq ($(PWD),)
-PWD=$(strip $(wildcard $(addsuffix /pwd,$(subst :, ,$(PATH)))))
-ifeq ($(PWD),)
-nopwd:
-	@echo
-	@echo You need the GNU pwd,cp,mv,rm,install utils to use this makefile!
-	@echo Get ftp://tflily.fys.kuleuven.ac.be/pub/fpc/dist/gnuutils.zip
-	@echo
-	@exit
-else
-inlinux=1
-endif
-else
-PWD:=$(subst \,/,$(firstword $(PWD)))
-endif
-
-# Detect NT - NT sets OS to Windows_NT
-ifndef inlinux
-ifeq ($(OS),Windows_NT)
-inWinNT=1
-endif
-endif
-
-
-#####################################################################
-# Targets
-#####################################################################
-
-# Target OS
-ifndef OS_TARGET
-ifdef inlinux
-OS_TARGET=linux
-else
-ifdef inWinNT
-OS_TARGET=win32
-else
-OS_TARGET=go32v2
-endif
-endif
-endif
-
-# Source OS
-ifndef OS_SOURCE
-ifdef inlinux
-OS_SOURCE=linux
-else
-ifndef inWinNT
-OS_SOURCE=win32
-else
-OS_SOURCE=go32v2
-endif
-endif
-endif
-
-# CPU
-ifndef CPU
-CPU=i386
-endif
-
-# Options
-ifndef OPT
-OPT=
-endif
-
-# What compiler to use ?
-ifndef PP
-PP=ppc386
-endif
-
-# assembler, redefine it if cross compiling
-ifndef AS
-AS=as
-endif
-
-# linker, but probably not used 
-ifndef LD
-LD=ld
-endif
-
-# Release ? Then force OPT and don't use extra opts via commandline
-ifdef RELEASE
-override OPT:=-Xs -OG2p2 -n
-endif
-
-# Verbose settings (warning,note,info)
-ifdef VERBOSE
-override OPT+=-vwni
-endif
-
-#####################################################################
-# Shell commands
-#####################################################################
-
-# To copy pograms
-ifndef COPY
-COPY=cp -fp
-endif
-
-# To move pograms
-ifndef MOVE
-MOVE=mv -f
-endif
-
-# Check delete program
-ifndef DEL
-DEL=rm -f
-endif
-
-# Check deltree program
-ifndef DELTREE
-DELTREE=rm -rf
-endif
-
-# To install files
-ifndef INSTALL
-ifdef inlinux
-INSTALL=install -m 644
-else
-INSTALL=$(COPY)
-# ginstall has the strange thing to stubify all .o files !
-#INSTALL=ginstall -m 644
-endif
-endif
-
-# To install programs
-ifndef INSTALLEXE
-ifdef inlinux
-INSTALLEXE=install -m 755
-else
-INSTALLEXE=$(COPY)
-# ginstall has the strange thing to stubify all .o files !
-#INSTALLEXE=ginstall -m 755
-endif
-endif
-
-# To make a directory.
-ifndef MKDIR
-ifdef inlinux
-MKDIR=install -m 755 -d
-else
-MKDIR=ginstall -m 755 -d
-endif
-endif
-
-
-#####################################################################
-# Default Tools
-#####################################################################
-
-# ppas.bat / ppas.sh
-ifdef inlinux
-PPAS=ppas.sh
-else
-PPAS=ppas.bat
-endif
-
-# ldconfig to rebuild .so cache
-ifdef inlinux
-LDCONFIG=ldconfig
-else
-LDCONFIG=
-endif
-
-# Where is the ppumove program ?
-ifndef PPUMOVE
-PPUMOVE=ppumove
-endif
-
-# diff
-ifndef DIFF
-DIFF=diff
-endif
-
-# date
-ifndef DATE
-# first try go32v2 specific gdate
-DATE=$(strip $(wildcard $(addsuffix /gdate.exe,$(subst ;, ,$(PATH)))))
-# try generic date.exe
-ifeq ($(DATE),)
-DATE=$(strip $(wildcard $(addsuffix /date.exe,$(subst ;, ,$(PATH)))))
-# finally try for linux
-ifeq ($(DATE),)
-DATE=$(strip $(wildcard $(addsuffix /date,$(subst :, ,$(PATH)))))
-ifeq ($(DATE),)
-DATE=
-endif
-else
-DATE:=$(subst \,/,$(firstword $(DATE)))
-endif
-else
-DATE:=$(subst \,/,$(firstword $(DATE)))
-endif
-endif
-
-# Sed
-ifndef SED
-SED=$(strip $(wildcard $(addsuffix /sed.exe,$(subst ;, ,$(PATH)))))
-ifeq ($(SED),)
-SED=$(strip $(wildcard $(addsuffix /sed,$(subst :, ,$(PATH)))))
-ifeq ($(SED),)
-SED=
-endif
-else
-SED:=$(subst \,/,$(firstword $(SED)))
-endif
-endif
-
-
-#####################################################################
-# Default Directories
-#####################################################################
-
-# Base dir
-ifdef PWD
-BASEDIR=$(shell $(PWD))
-endif
-
-# set the directory to the rtl base
-ifndef RTLDIR
-ifdef RTL
-RTLDIR=$(RTL)
-else
-RTLDIR:=$(BASEDIR)/../rtl
-endif
-endif
-
-# specify where units are.
-ifndef UNITDIR
-UNITDIR=$(RTLDIR)/$(OS_TARGET)
-ifeq ($(OS_TARGET),go32v1)
-UNITDIR=$(RTLDIR)/dos/go32v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-UNITDIR=$(RTLDIR)/dos/go32v2
-endif
-endif
-
-# set the prefix directory where to install everything
-ifndef PREFIXINSTALLDIR
-ifdef inlinux
-PREFIXINSTALLDIR=/usr
-else
-PREFIXINSTALLDIR=/pp
-endif
-endif
-
-# set the base directory where to install everything
-ifndef BASEINSTALLDIR
-ifdef inlinux
-BASEINSTALLDIR=$(PREFIXINSTALLDIR)/lib/fpc/$(RELEASEVER)
-else
-BASEINSTALLDIR=$(PREFIXINSTALLDIR)
-endif
-endif
-
-
-#####################################################################
-# Install Directories based on BASEINSTALLDIR
-#####################################################################
-
-# Linux binary really goes to baseinstalldir
-ifndef LIBINSTALLDIR
-ifdef inlinux
-LIBINSTALLDIR=$(BASEINSTALLDIR)
-else
-LIBINSTALLDIR=$(BASEINSTALLDIR)/lib
-endif
-endif
-
-# set the directory where to install the binaries
-ifndef BININSTALLDIR
-ifdef inlinux
-BININSTALLDIR=$(PREFIXINSTALLDIR)/bin
-else
-BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET)
-endif
-endif
-
-# set the directory where to install the units.
-ifndef UNITINSTALLDIR
-ifdef inlinux
-UNITINSTALLDIR=$(BASEINSTALLDIR)/linuxunits
-else
-UNITINSTALLDIR=$(BASEINSTALLDIR)/rtl/$(OS_TARGET)
-endif
-endif
-
-# set the directory where to install the units.
-ifndef STATIC_UNITINSTALLDIR
-ifdef inlinux
-STATIC_UNITINSTALLDIR=$(BASEINSTALLDIR)/staticunits
-else
-STATIC_UNITINSTALLDIR=$(BASEINSTALLDIR)/rtl/$(OS_TARGET)/static
-endif
-endif
-
-# set the directory where to install the units.
-ifndef SHARED_UNITINSTALLDIR
-ifdef inlinux
-SHARED_UNITINSTALLDIR=$(BASEINSTALLDIR)/sharedunits
-else
-SHARED_UNITINSTALLDIR=$(BASEINSTALLDIR)/rtl/$(OS_TARGET)/shared
-endif
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef STATIC_LIBINSTALLDIR
-ifdef inlinux
-STATIC_LIBINSTALLDIR=$(BASEINSTALLDIR)/staticunits
-else
-STATIC_LIBINSTALLDIR=$(STATIC_UNITINSTALLDIR)
-endif
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef SHARED_LIBINSTALLDIR
-ifdef inlinux
-SHARED_LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
-else
-SHARED_LIBINSTALLDIR=$(SHARED_UNITINSTALLDIR)
-endif
-endif
-
-# Where the .msg files will be stored
-ifndef MSGINSTALLDIR
-ifdef inlinux
-MSGINSTALLDIR=$(BASEINSTALLDIR)/msg
-else
-MSGINSTALLDIR=$(BININSTALLDIR)
-endif
-endif
-
-# Where the doc files will be stored
-ifndef DOCINSTALLDIR
-ifdef inlinux
-DOCINSTALLDIR=$(PREFIXINSTALLDIR)/doc/fpc/$(RELEASEVER)
-else
-DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
-endif
-endif
-
-
-#####################################################################
-# Compiler Command Line
-#####################################################################
-
-# Load commandline OPTDEF and add CPU define
-override PPOPTDEF=$(OPTDEF) -d$(CPU)
-
-# Load commandline OPT and add target and unit dir to be sure
-override PPOPT=$(OPT) -T$(OS_TARGET) -Fu$(UNITDIR) $(NEEDOPT)
-
-# Add include dirs INC and PROCINC
-ifdef INC
-override PPOPT+=-I$(INC)
-endif
-ifdef PROCINC
-override PPOPT+=-I$(PROCINC)
-endif
-ifdef OSINC
-override PPOPT+=-I$(OSINC)
-endif
-
-# Target dirs
-ifdef TARGETDIR
-override PPOPT+=-FE$(TARGETDIR)
-endif
-ifdef UNITTARGETDIR
-override PPOPT+=-FU$(UNITTARGETDIR)
-endif
-
-# Smartlinking
-ifeq ($(SMARTLINK),YES)
-ifeq ($(LIBTYPE),shared)
-override SMARTLINK=NO
-else
-override PPOPT+=-Cx
-endif
-endif
-
-# Add library type, for static libraries smartlinking is automatic used
-ifeq ($(LIBTYPE),shared)
-override PPOPT+=-CD
-else
-ifeq ($(LIBTYPE),static)
-override PPOPT+=-CS
-endif
-endif
-
-# Add library name
-ifneq ($(LIBNAME),)
-override PPOPT:=$(PPOPT) -o$(LIBNAME)
-endif
-
-# Add defines from PPOPTDEF to PPOPT
-override PPOPT:=$(PPOPT) $(PPOPTDEF)
-
-# Was a config file specified ?
-ifdef CFGFILE
-override PPOPT:=$(PPOPT) @$(CFGFILE)
-endif
-
-override COMPILER=$(PP) $(PPOPT)
-
-
-#####################################################################
-# Default extensions
-#####################################################################
-
-# Default needed extensions (Go32v2,Linux)
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-
-# Executable extension
-ifdef inlinux
-EXEEXT=
-else
-EXEEXT=.exe
-endif
-
-# Go32v1
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-endif
-
-# Win32
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-endif
-
-# OS/2
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.o2
-SMARTEXT=.so
-STATICLIBEXT=.ao
-SHAREDLIBEXT=.dll
-endif
-
-# determine libary extension.
-ifeq ($(LIBTYPE),static)
-LIBEXT=$(STATICLIBEXT)
-else
-LIBEXT=$(SHAREDLIBEXT)
-endif
-
-# library prefix
-LIBPREFIX=lib
-ifeq ($(OS_TARGET),go32v2)
-LIBPREFIX=
-endif
-ifeq ($(OS_TARGET),go32v1)
-LIBPREFIX=
-endif
-
-# determine with .pas extension is used
-ifdef EXEOBJECTS
-override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(EXEOBJECTS)))))
-else
-override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(UNITOBJECTS)))))
-endif
-
-ifeq ($(TESTPAS),)
-PASEXT=.pp
-else
-PASEXT=.pas
-endif
-
-
-#####################################################################
-# Export commandline values, so nesting use the same values
-#####################################################################
-
-export OS_SOURCE OS_TARGET OPT OPTDEF CPU PP RELEASE VERBOSE
-export SMARTLINK LIBTYPE LIBNAME
-export BASEINSTALLDIR
-
-
-#####################################################################
-# General compile rules
-#####################################################################
-
-# Create Filenames
-EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
-UNITFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
-UNITOFILES=$(addsuffix $(OEXT),$(UNITOBJECTS))
-
-.PHONY : all clean install \
-         info cfginfo objectinfo installinfo filesinfo
-
-.SUFFIXES : $(EXEEXT) $(PPUEXT) $(PASEXT)
-
-ifdef DEFAULTUNITS
-all: units
-else
-all: units exes
-endif
-
-units: $(UNITFILES)
-
-exes: $(EXEFILES)
-
-# General compile rules
-%$(PPUEXT): %$(PASEXT)
-	$(COMPILER) $<
-
-%$(EXEEXT): %$(PASEXT)
-	$(COMPILER) $<
-
-
-
-#####################################################################
-# Install rules
-#####################################################################
-
-install : all
-ifdef EXEOBJECTS
-	$(MKDIR) $(BININSTALLDIR)
-	$(INSTALLEXE) $(EXEFILES) $(BININSTALLDIR)
-endif
-ifdef UNITOBJECTS
-	$(MKDIR) $(UNITINSTALLDIR)
-ifeq ($(SMARTLINK),YES)
-	$(INSTALL) $(LIBPREFIX)$(LIBNAME)$(LIBEXT) $(UNITINSTALLDIR)
-else
-	$(INSTALL) $(UNITFILES) $(UNITOFILES) $(UNITINSTALLDIR)
-endif
-endif
-
-
-#####################################################################
-# Clean rules
-#####################################################################
-
-clean:
-	-$(DEL) *$(OEXT) *$(ASMEXT) *$(PPUEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) $(PPAS) link.res log
-	-$(DELTREE) *$(SMARTEXT)
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES)
-endif
-
-
-#####################################################################
-# Depend rules
-#####################################################################
-
-depend:
-	makedep $(UNITOBJECTS)
-
-#####################################################################
-# Info rules
-#####################################################################
-
-info: cfginfo objectinfo installinfo
-
-cfginfo:
-	@echo
-	@echo  == Configuration info ==
-	@echo
-	@echo  Source.... $(OS_SOURCE)
-	@echo  Target.... $(OS_TARGET)
-	@echo  Basedir... $(BASEDIR)
-	@echo  Pwd....... $(PWD)
-ifdef SED
-	@echo  Sed....... $(SED)
-endif
-	@echo
-
-objectinfo:
-	@echo
-	@echo  == Object info ==
-	@echo
-	@echo  UnitObjects... $(UNITOBJECTS)
-	@echo  ExeObjects.... $(EXEOBJECTS)
-	@echo
-
-installinfo:
-	@echo
-	@echo  == Install info ==
-	@echo
-	@echo  BaseInstallDir....... $(BASEINSTALLDIR)
-	@echo  BinInstallDir........ $(BININSTALLDIR)
-	@echo  UnitInstallDir....... $(UNITINSTALLDIR)
-	@echo  StaticUnitInstallDir. $(STATIC_UNITINSTALLDIR)
-	@echo  SharedUnitInstallDir. $(SHARED_UNITINSTALLDIR)
-	@echo  LibInstallDir........ $(LIBINSTALLDIR)
-	@echo  StaticLibInstallDir.. $(STATIC_LIBINSTALLDIR)
-	@echo  SharedLibInstallDir.. $(SHARED_LIBINSTALLDIR)
-	@echo  MsgInstallDir........ $(MSGINSTALLDIR)
-	@echo  DocInstallDir........ $(DOCINSTALLDIR)
-	@echo
-
-# try to get the files in the currentdir
-PASFILES:=$(wildcard *.pas)
-PPFILES:=$(wildcard *.pp)
-INCFILES:=$(wildcard *.inc)
-MSGFILES:=$(wildcard *.msg)
-ASFILES:=$(wildcard *.as)
-
-filesinfo:
-	@echo
-	@echo  == Files info ==
-	@echo
-ifdef PASFILES
-	@echo  Pas files are $(PASFILES)
-endif
-ifdef PPFILES
-	@echo  PP  files are $(PPFILES)
-endif
-ifdef INCFILES
-	@echo  Inc files are $(INCFILES)
-endif
-ifdef MSGFILES
-	@echo  Msg files are $(MSGFILES)
-endif
-ifdef ASFILES
-	@echo  As  files are $(ASFILES)
-endif
-