* make shared support

git-svn-id: trunk@2228 -
This commit is contained in:
florian 2006-01-08 15:56:31 +00:00
parent 9c6b3cc8f7
commit 4e6f4e5cb4
2 changed files with 143 additions and 13 deletions

View File

@ -1,5 +1,5 @@
#
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/12/29]
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2006/01/08]
#
default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-wince powerpc64-linux
@ -238,13 +238,13 @@ INC=$(RTL)/inc
COMMON=$(RTL)/common
PROCINC=$(RTL)/$(CPU_TARGET)
UNIXINC=$(RTL)/unix
UNITPREFIX=rtl
ifeq ($(CPU_TARGET),i386)
CRT21=cprt21 gprt21
CPU_UNITS=x86 ports cpu mmx
else
CPU_UNITS=
endif
UNITPREFIX=rtl
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
SYSTEMUNIT=system
LINUXUNIT1=
@ -1040,6 +1040,117 @@ endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override COMPILER_TARGETDIR+=.
endif
ifeq ($(FULL_TARGET),i386-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-go32v2)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-win32)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-os2)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-freebsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-beos)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-netbsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-solaris)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-qnx)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-netware)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-openbsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-wdosx)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-emx)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-watcom)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-netwlibc)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),i386-wince)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-freebsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-netbsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-amiga)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-atari)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-openbsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),m68k-palmos)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),powerpc-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),powerpc-netbsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),powerpc-macos)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),powerpc-morphos)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),sparc-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),sparc-netbsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),sparc-solaris)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),x86_64-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),x86_64-freebsd)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),x86_64-win64)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),arm-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),arm-wince)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override SHARED_LIBUNITS+=$(SYSTEMUNIT) objpas strings dos unix baseunix unixtype unixutil sysutils typinfo math $(CPU_UNITS) getopts errors sockets varutils classes variants sysconst rtlconsts
endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@ -1243,6 +1354,7 @@ ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
SHAREDLIBEXT=.so
SHAREDLIBPREFIX=libfp
STATICLIBPREFIX=libp
RSTEXT=.rst
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
@ -1986,6 +2098,26 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
ifndef SHARED_LIBVERSION
SHARED_LIBVERSION=$(FPC_VERSION)
endif
ifndef $(SHARED_LIBNAME)
SHARED_LIBNAME=$(PACKAGE_NAME)
endif
ifndef LIB_FULLNAME
SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)
endif
ifndef SHARED_LIBUNITS
SHARED_LIBUNITS:=$(TARGET_UNITS)
endif
fpc_shared:
ifdef HASSHAREDLIB
$(MAKE) all $(SHAREDOPTS)
$(PPUMOVE) $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME)
else
@$(ECHO) Shared Libraries not supported
endif
.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
ifdef INSTALL_UNITS
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
@ -2235,7 +2367,7 @@ smart: fpc_smart
release: fpc_release
units: fpc_units
examples:
shared:
shared: fpc_shared
install: fpc_install
sourceinstall: fpc_sourceinstall
exampleinstall: fpc_exampleinstall

View File

@ -37,15 +37,13 @@ includedir=$(INC) $(PROCINC) $(UNIXINC) $(CPU_TARGET)
sourcedir=$(INC) $(PROCINC) $(UNIXINC) $(CPU_TARGET) $(COMMON)
targetdir=.
[lib]
libname=libfprtl.so
libversion=2.0.0
libunits=$(SYSTEMUNIT) objpas strings \
unix ports \
dos crt objects printer \
[shared]
libunits=$(SYSTEMUNIT) objpas strings dos \
unix baseunix unixtype unixutil \
sysutils typinfo math \
cpu mmx getopts heaptrc \
errors sockets ipc dl dynlibs varutils
$(CPU_UNITS) getopts \
errors sockets varutils \
classes variants sysconst rtlconsts \
[prerules]
RTL=..
@ -54,6 +52,8 @@ COMMON=$(RTL)/common
PROCINC=$(RTL)/$(CPU_TARGET)
UNIXINC=$(RTL)/unix
UNITPREFIX=rtl
ifeq ($(CPU_TARGET),i386)
CRT21=cprt21 gprt21
CPU_UNITS=x86 ports cpu mmx
@ -61,8 +61,6 @@ else
CPU_UNITS=
endif
UNITPREFIX=rtl
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
SYSTEMUNIT=system
LINUXUNIT1=