Browse Source

* library support including symlink of .so to .so.1.0

peter 25 years ago
parent
commit
b76e3e3e91

+ 20 - 14
api/linux/Makefile

@@ -1,5 +1,5 @@
 #
 #
-# Makefile generated by fpcmake v0.99.15 [2000/05/26]
+# Makefile generated by fpcmake v0.99.15 [2000/06/01]
 #
 #
 
 
 defaultrule: all
 defaultrule: all
@@ -230,7 +230,8 @@ override PACKAGES+=rtl
 
 
 # Libraries
 # Libraries
 
 
-LIBNAME=libfpapi.so.1.0
+LIBNAME=libfpapi.so
+LIBVERSION=1.0
 
 
 # Info
 # Info
 
 
@@ -885,6 +886,12 @@ fpc_debug:
 
 
 .PHONY: fpc_smart fpc_shared
 .PHONY: fpc_smart fpc_shared
 
 
+ifdef LIBVERSION
+LIBFULLNAME=$(LIBNAME).$(LIBVERSION)
+else
+LIBFULLNAME=$(LIBNAME)
+endif
+
 # Default sharedlib units are all unit objects
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
 ifndef SHAREDLIBUNITOBJECTS
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
@@ -898,7 +905,7 @@ ifdef inlinux
 ifndef LIBNAME
 ifndef LIBNAME
 	@$(ECHO) "LIBNAME not set"
 	@$(ECHO) "LIBNAME not set"
 else
 else
-	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)
+	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)
 endif
 endif
 else
 else
 	@$(ECHO) "Shared Libraries not supported"
 	@$(ECHO) "Shared Libraries not supported"
@@ -916,14 +923,7 @@ endif
 
 
 ifdef INSTALLPPUFILES
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef PPUFILES
-ifdef inlinux
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-ifdef LIBNAME
-INSTALLPPULIBFILES=$(LIBNAME)
-endif
-else
-INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
-endif
 else
 else
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
@@ -938,8 +938,11 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
-	@$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
+ifneq ($(wildcard $(LIBFULLNAME)),)
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)
+ifdef inlinux
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
@@ -962,9 +965,12 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
+ifneq ($(wildcard $(LIBFULLNAME)),)
 	$(MKDIR) $(LIBINSTALLDIR)
 	$(MKDIR) $(LIBINSTALLDIR)
-	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
+	$(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)
+ifdef inlinux
+	ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES

+ 2 - 1
api/linux/Makefile.fpc

@@ -14,7 +14,8 @@ unitsubdir=api
 packagename=api
 packagename=api
 
 
 [libs]
 [libs]
-libname=libfpapi.so.1.0
+libname=libfpapi.so
+libversion=1.0
 
 
 [dirs]
 [dirs]
 fpcdir=../..
 fpcdir=../..

+ 20 - 14
fcl/linux/Makefile

@@ -1,5 +1,5 @@
 #
 #
-# Makefile generated by fpcmake v0.99.15 [2000/05/26]
+# Makefile generated by fpcmake v0.99.15 [2000/06/01]
 #
 #
 
 
 defaultrule: all
 defaultrule: all
@@ -234,7 +234,8 @@ override PACKAGES+=rtl zlib inet
 
 
 # Libraries
 # Libraries
 
 
-LIBNAME=libfpfcl.so.1.0
+LIBNAME=libfpfcl.so
+LIBVERSION=1.0
 
 
 # Info
 # Info
 
 
@@ -942,6 +943,12 @@ fpc_debug:
 
 
 .PHONY: fpc_smart fpc_shared
 .PHONY: fpc_smart fpc_shared
 
 
+ifdef LIBVERSION
+LIBFULLNAME=$(LIBNAME).$(LIBVERSION)
+else
+LIBFULLNAME=$(LIBNAME)
+endif
+
 # Default sharedlib units are all unit objects
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
 ifndef SHAREDLIBUNITOBJECTS
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
@@ -955,7 +962,7 @@ ifdef inlinux
 ifndef LIBNAME
 ifndef LIBNAME
 	@$(ECHO) "LIBNAME not set"
 	@$(ECHO) "LIBNAME not set"
 else
 else
-	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)
+	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)
 endif
 endif
 else
 else
 	@$(ECHO) "Shared Libraries not supported"
 	@$(ECHO) "Shared Libraries not supported"
@@ -973,14 +980,7 @@ endif
 
 
 ifdef INSTALLPPUFILES
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef PPUFILES
-ifdef inlinux
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-ifdef LIBNAME
-INSTALLPPULIBFILES=$(LIBNAME)
-endif
-else
-INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
-endif
 else
 else
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
@@ -995,8 +995,11 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
-	@$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
+ifneq ($(wildcard $(LIBFULLNAME)),)
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)
+ifdef inlinux
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
@@ -1019,9 +1022,12 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
+ifneq ($(wildcard $(LIBFULLNAME)),)
 	$(MKDIR) $(LIBINSTALLDIR)
 	$(MKDIR) $(LIBINSTALLDIR)
-	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
+	$(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)
+ifdef inlinux
+	ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES

+ 2 - 1
fcl/linux/Makefile.fpc

@@ -18,7 +18,8 @@ unitsubdir=fcl
 packagename=fcl
 packagename=fcl
 
 
 [libs]
 [libs]
-libname=libfpfcl.so.1.0
+libname=libfpfcl.so
+libversion=1.0
 
 
 [dirs]
 [dirs]
 fpcdir=../..
 fpcdir=../..

+ 2 - 2
install/debian/changelog

@@ -2,8 +2,8 @@ fpc (0.99.15-0) unstable; urgency=low
 
 
   * New Upstream
   * New Upstream
 
 
- -- Mika Fischer <[email protected]>  Sat, 06 Mrt 2000 22:18:11 +0100
- 
+ -- Peter Vreman <[email protected]>  Sat, 01 Jun 2000 22:18:11 +0200
+
 fpc (0.99.13-19991013-4) unstable; urgency=low
 fpc (0.99.13-19991013-4) unstable; urgency=low
 
 
   * Fixed bashism in samplecfg (Closes: Bug#50636)
   * Fixed bashism in samplecfg (Closes: Bug#50636)

+ 0 - 1
install/debian/fp-compiler.files.in

@@ -8,4 +8,3 @@
 /usr/share/doc/fp-compiler/faq.txt
 /usr/share/doc/fp-compiler/faq.txt
 /usr/share/man/man1/ppc386.1
 /usr/share/man/man1/ppc386.1
 /usr/share/man/man5/ppc386.cfg.5
 /usr/share/man/man5/ppc386.cfg.5
-

+ 1 - 1
install/debian/fp-units-api.files.in

@@ -1,2 +1,2 @@
 /usr/lib/fpc/%{fpcversion}/units/linux/api
 /usr/lib/fpc/%{fpcversion}/units/linux/api
-/usr/lib/libfpapi.so.*
+/usr/lib/libfpapi.so*

+ 1 - 1
install/debian/fp-units-fcl.files.in

@@ -1,2 +1,2 @@
 /usr/lib/fpc/%{fpcversion}/units/linux/fcl
 /usr/lib/fpc/%{fpcversion}/units/linux/fcl
-/usr/lib/libfpfcl.so.*
+/usr/lib/libfpfcl.so*

+ 1 - 1
install/debian/fp-units-gtk.files.in

@@ -11,6 +11,6 @@
 /usr/lib/fpc/%{fpcversion}/units/linux/gtk.o
 /usr/lib/fpc/%{fpcversion}/units/linux/gtk.o
 /usr/lib/fpc/%{fpcversion}/units/linux/libgtk.a
 /usr/lib/fpc/%{fpcversion}/units/linux/libgtk.a
 
 
-/usr/lib/libfpgtk.so.*
+/usr/lib/libfpgtk.so*
 
 
 /usr/share/doc/fp-units-gtk/
 /usr/share/doc/fp-units-gtk/

+ 1 - 1
install/debian/fp-units-rtl.files.in

@@ -1,2 +1,2 @@
 /usr/lib/fpc/%{fpcversion}/units/linux/rtl
 /usr/lib/fpc/%{fpcversion}/units/linux/rtl
-/usr/lib/libfprtl.so.*
+/usr/lib/libfprtl.so*

+ 1 - 0
install/debian/fp-utils.files.in

@@ -10,6 +10,7 @@
 /usr/bin/plex
 /usr/bin/plex
 /usr/bin/pyacc
 /usr/bin/pyacc
 /usr/bin/h2pas
 /usr/bin/h2pas
+/usr/bin/postw32
 /usr/lib/fpc/%{fpcversion}/units/linux/lexlib.ppu
 /usr/lib/fpc/%{fpcversion}/units/linux/lexlib.ppu
 /usr/lib/fpc/%{fpcversion}/units/linux/yacclib.ppu
 /usr/lib/fpc/%{fpcversion}/units/linux/yacclib.ppu
 /usr/lib/fpc/%{fpcversion}/units/linux/lexlib.o
 /usr/lib/fpc/%{fpcversion}/units/linux/lexlib.o

+ 5 - 4
install/fpc-0.99.15.spec

@@ -85,11 +85,12 @@ ldconfig
 /usr/bin/pyacc
 /usr/bin/pyacc
 /usr/bin/h2pas
 /usr/bin/h2pas
 /usr/bin/fprcp
 /usr/bin/fprcp
+/usr/bin/postw32
 %{fpcdir}
 %{fpcdir}
-/usr/lib/libfprtl.so.*
-/usr/lib/libfpfcl.so.*
-/usr/lib/libfpgtk.so.*
-/usr/lib/libfpapi.so.*
+/usr/lib/libfprtl.so*
+/usr/lib/libfpfcl.so*
+/usr/lib/libfpgtk.so*
+/usr/lib/libfpapi.so*
 /usr/lib/fpc/lexyacc/yylex.cod 
 /usr/lib/fpc/lexyacc/yylex.cod 
 /usr/lib/fpc/lexyacc/yyparse.cod
 /usr/lib/fpc/lexyacc/yyparse.cod
 /usr/man/man1/delp.1
 /usr/man/man1/delp.1

+ 20 - 14
packages/gtk/Makefile

@@ -1,5 +1,5 @@
 #
 #
-# Makefile generated by fpcmake v0.99.15 [2000/05/26]
+# Makefile generated by fpcmake v0.99.15 [2000/06/01]
 #
 #
 
 
 defaultrule: all
 defaultrule: all
@@ -209,7 +209,8 @@ override PACKAGES+=rtl
 
 
 # Libraries
 # Libraries
 
 
-LIBNAME=libfpgtk.so.1.0
+LIBNAME=libfpgtk.so
+LIBVERSION=1.0
 
 
 # Info
 # Info
 
 
@@ -836,6 +837,12 @@ fpc_debug:
 
 
 .PHONY: fpc_smart fpc_shared
 .PHONY: fpc_smart fpc_shared
 
 
+ifdef LIBVERSION
+LIBFULLNAME=$(LIBNAME).$(LIBVERSION)
+else
+LIBFULLNAME=$(LIBNAME)
+endif
+
 # Default sharedlib units are all unit objects
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
 ifndef SHAREDLIBUNITOBJECTS
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
@@ -849,7 +856,7 @@ ifdef inlinux
 ifndef LIBNAME
 ifndef LIBNAME
 	@$(ECHO) "LIBNAME not set"
 	@$(ECHO) "LIBNAME not set"
 else
 else
-	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)
+	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)
 endif
 endif
 else
 else
 	@$(ECHO) "Shared Libraries not supported"
 	@$(ECHO) "Shared Libraries not supported"
@@ -867,14 +874,7 @@ endif
 
 
 ifdef INSTALLPPUFILES
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef PPUFILES
-ifdef inlinux
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-ifdef LIBNAME
-INSTALLPPULIBFILES=$(LIBNAME)
-endif
-else
-INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
-endif
 else
 else
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
@@ -889,8 +889,11 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
-	@$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
+ifneq ($(wildcard $(LIBFULLNAME)),)
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)
+ifdef inlinux
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
@@ -913,9 +916,12 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
+ifneq ($(wildcard $(LIBFULLNAME)),)
 	$(MKDIR) $(LIBINSTALLDIR)
 	$(MKDIR) $(LIBINSTALLDIR)
-	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
+	$(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)
+ifdef inlinux
+	ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES

+ 2 - 1
packages/gtk/Makefile.fpc

@@ -11,7 +11,8 @@ sourcesdir=glib gdk gtk
 targetdir=.
 targetdir=.
 
 
 [libs]
 [libs]
-libname=libfpgtk.so.1.0
+libname=libfpgtk.so
+libversion=1.0
 
 
 
 
 [rules]
 [rules]

+ 20 - 14
rtl/linux/Makefile

@@ -1,5 +1,5 @@
 #
 #
-# Makefile generated by fpcmake v0.99.15 [2000/05/26]
+# Makefile generated by fpcmake v0.99.15 [2000/06/01]
 #
 #
 
 
 defaultrule: all
 defaultrule: all
@@ -227,7 +227,8 @@ endif
 
 
 # Libraries
 # Libraries
 
 
-LIBNAME=libfprtl.so.1.0
+LIBNAME=libfprtl.so
+LIBVERSION=1.0
 SHAREDLIBUNITOBJECTS=$(SYSTEMUNIT) objpas strings linux ports dos crt objects printer sysutils typinfo math cpu mmx getopts heaptrc errors sockets ipc
 SHAREDLIBUNITOBJECTS=$(SYSTEMUNIT) objpas strings linux ports dos crt objects printer sysutils typinfo math cpu mmx getopts heaptrc errors sockets ipc
 
 
 # Info
 # Info
@@ -858,6 +859,12 @@ fpc_debug:
 
 
 .PHONY: fpc_smart fpc_shared
 .PHONY: fpc_smart fpc_shared
 
 
+ifdef LIBVERSION
+LIBFULLNAME=$(LIBNAME).$(LIBVERSION)
+else
+LIBFULLNAME=$(LIBNAME)
+endif
+
 # Default sharedlib units are all unit objects
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
 ifndef SHAREDLIBUNITOBJECTS
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
@@ -871,7 +878,7 @@ ifdef inlinux
 ifndef LIBNAME
 ifndef LIBNAME
 	@$(ECHO) "LIBNAME not set"
 	@$(ECHO) "LIBNAME not set"
 else
 else
-	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)
+	$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)
 endif
 endif
 else
 else
 	@$(ECHO) "Shared Libraries not supported"
 	@$(ECHO) "Shared Libraries not supported"
@@ -889,14 +896,7 @@ endif
 
 
 ifdef INSTALLPPUFILES
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef PPUFILES
-ifdef inlinux
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-ifdef LIBNAME
-INSTALLPPULIBFILES=$(LIBNAME)
-endif
-else
-INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
-endif
 else
 else
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
@@ -911,8 +911,11 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 	@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
-	@$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
+ifneq ($(wildcard $(LIBFULLNAME)),)
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)
+ifdef inlinux
+	@$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
@@ -935,9 +938,12 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
+ifneq ($(wildcard $(LIBFULLNAME)),)
 	$(MKDIR) $(LIBINSTALLDIR)
 	$(MKDIR) $(LIBINSTALLDIR)
-	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
+	$(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)
+ifdef inlinux
+	ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES

+ 2 - 1
rtl/linux/Makefile.fpc

@@ -27,7 +27,8 @@ incdir=$(INC) $(PROCINC)
 targetdir=.
 targetdir=.
 
 
 [libs]
 [libs]
-libname=libfprtl.so.1.0
+libname=libfprtl.so
+libversion=1.0
 libunits=$(SYSTEMUNIT) objpas strings \
 libunits=$(SYSTEMUNIT) objpas strings \
       linux ports \
       linux ports \
       dos crt objects printer \
       dos crt objects printer \

+ 108 - 102
utils/fpcmake.inc

@@ -1058,9 +1058,15 @@ const fpcmakeini : array[0..121,1..240] of char=(
   #010+
   #010+
   '.PHONY: fpc_smart fpc_shared'#010+
   '.PHONY: fpc_smart fpc_shared'#010+
   #010+
   #010+
-  '# Default sharedlib units are all unit objects'#010+
+  'ifdef LIBVERSION'#010+
+  'LIBFULLNAME=$(LIBNAME).$(LIBVERSION)'#010+
+  'else'#010+
+  'LIBFULLNAME=$(LIBNAME)'#010+
+  'endif'#010+
+  #010+
+  '# D','efault sharedlib units are all unit objects'#010+
   'ifndef SHAREDLIBUNITOBJECTS'#010+
   'ifndef SHAREDLIBUNITOBJECTS'#010+
-  'SHAREDLIBUNITOBJE','CTS:=$(UNITOBJECTS)'#010+
+  'SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   'fpc_smart:'#010+
   'fpc_smart:'#010+
@@ -1069,62 +1075,57 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'fpc_shared: all'#010+
   'fpc_shared: all'#010+
   'ifdef inlinux'#010+
   'ifdef inlinux'#010+
   'ifndef LIBNAME'#010+
   'ifndef LIBNAME'#010+
-  '        @$(ECHO) "LIBNAME not set"'#010+
+  '        @$(ECHO) "LIB','NAME not set"'#010+
   'else'#010+
   'else'#010+
-  '        $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)'#010+
+  '        $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)'#010+
   'endif'#010+
   'endif'#010+
   'else'#010+
   'else'#010+
-  '   ','     @$(ECHO) "Shared Libraries not supported"'#010+
+  '        @$(ECHO) "Shared Libraries not supported"'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   #010+
   #010+
   '[installrules]'#010+
   '[installrules]'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
-  '# Install rules'#010+
+  '# Insta','ll rules'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   #010+
   #010+
-  '.PHONY: fpc_s','howinstall fpc_install'#010+
+  '.PHONY: fpc_showinstall fpc_install'#010+
   #010+
   #010+
   'ifdef EXTRAINSTALLUNITS'#010+
   'ifdef EXTRAINSTALLUNITS'#010+
   'override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))'#010+
   'override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
-  'ifdef INSTALLPPUFILES'#010+
+  'ifdef INSTALLPPUFILES'#010,
   'ifdef PPUFILES'#010+
   'ifdef PPUFILES'#010+
-  'ifdef inlinux'#010+
-  'INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES','))'#010+
-  'ifdef LIBNAME'#010+
-  'INSTALLPPULIBFILES=$(LIBNAME)'#010+
-  'endif'#010+
-  'else'#010+
-  'INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))'#010+
-  'endif'#010+
+  'INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))'#010+
   'else'#010+
   'else'#010+
   'INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPU'+
   'INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPU'+
   'FILES)))'#010+
   'FILES)))'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
-  'fpc_showinstall: $','(SHOWINSTALLTARGET)'#010+
+  'fpc_showinstall: $(SHOWINSTALLTARGET)'#010+
   'ifdef INSTALLEXEFILES'#010+
   'ifdef INSTALLEXEFILES'#010+
-  '        @$(ECHO) -e $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILE'+
-  'S))'#010+
+  ' ','       @$(ECHO) -e $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFI'+
+  'LES))'#010+
   'endif'#010+
   'endif'#010+
   'ifdef INSTALLPPUFILES'#010+
   'ifdef INSTALLPPUFILES'#010+
   '        @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFIL'+
   '        @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFIL'+
   'ES))'#010+
   'ES))'#010+
-  'ifneq ($(INSTALLPPULI','NKFILES),)'#010+
-  '        @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULIN'+
-  'KFILES))'#010+
+  'ifneq ($(INSTALLPPULINKFILES),)'#010+
+  '        @$(ECHO) -e $(addprefix ','"\n"$(UNITINSTALLDIR)/,$(INSTALLPPUL'+
+  'INKFILES))'#010+
+  'endif'#010+
+  'ifneq ($(wildcard $(LIBFULLNAME)),)'#010+
+  '        @$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)'#010+
+  'ifdef inlinux'#010+
+  '        @$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)'#010+
   'endif'#010+
   'endif'#010+
-  'ifneq ($(INSTALLPPULIBFILES),)'#010+
-  '        @$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBF'+
-  'ILES))'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
-  'ifdef EXTRAINSTALLFILES'#010,
-  '        @$(ECHO) -e $(addprefix "\n"$(DATAINSTALLDIR)/,$(EXTRAINSTALLF'+
-  'ILES))'#010+
+  'ifdef EXTRAINSTALLFILES'#010+
+  ' ','       @$(ECHO) -e $(addprefix "\n"$(DATAINSTALLDIR)/,$(EXTRAINSTAL'+
+  'LFILES))'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   'fpc_install: $(INSTALLTARGET)'#010+
   'fpc_install: $(INSTALLTARGET)'#010+
@@ -1132,7 +1133,7 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'ifdef INSTALLEXEFILES'#010+
   'ifdef INSTALLEXEFILES'#010+
   '        $(MKDIR) $(BININSTALLDIR)'#010+
   '        $(MKDIR) $(BININSTALLDIR)'#010+
   '# Compress the exes if upx is defined'#010+
   '# Compress the exes if upx is defined'#010+
-  'ifdef ','UPXPROG'#010+
+  'ifdef U','PXPROG'#010+
   '        -$(UPXPROG) $(INSTALLEXEFILES)'#010+
   '        -$(UPXPROG) $(INSTALLEXEFILES)'#010+
   'endif'#010+
   'endif'#010+
   '        $(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)'#010+
   '        $(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)'#010+
@@ -1140,25 +1141,28 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'ifdef INSTALLPPUFILES'#010+
   'ifdef INSTALLPPUFILES'#010+
   '        $(MKDIR) $(UNITINSTALLDIR)'#010+
   '        $(MKDIR) $(UNITINSTALLDIR)'#010+
   '        $(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)'#010+
   '        $(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)'#010+
-  'ifneq ($(I','NSTALLPPULINKFILES),)'#010+
+  'ifneq ($(IN','STALLPPULINKFILES),)'#010+
   '        $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)'#010+
   '        $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)'#010+
   'endif'#010+
   'endif'#010+
-  'ifneq ($(INSTALLPPULIBFILES),)'#010+
+  'ifneq ($(wildcard $(LIBFULLNAME)),)'#010+
   '        $(MKDIR) $(LIBINSTALLDIR)'#010+
   '        $(MKDIR) $(LIBINSTALLDIR)'#010+
-  '        $(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)'#010+
+  '        $(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)'#010+
+  'ifdef inlinux'#010+
+  '        ln -sf $(L','IBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)'#010+
+  'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
-  'ifdef EXTRAINSTAL','LFILES'#010+
+  'ifdef EXTRAINSTALLFILES'#010+
   '        $(MKDIR) $(DATAINSTALLDIR)'#010+
   '        $(MKDIR) $(DATAINSTALLDIR)'#010+
   '        $(INSTALL) $(EXTRAINSTALLFILES) $(DATAINSTALLDIR)'#010+
   '        $(INSTALL) $(EXTRAINSTALLFILES) $(DATAINSTALLDIR)'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   #010+
   #010+
   '[sourceinstallrules]'#010+
   '[sourceinstallrules]'#010+
-  '#####################################################################'#010+
-  '# SourceInstall rules'#010+
-  '###################','#################################################'+
+  '####################################','################################'+
   '#'#010+
   '#'#010+
+  '# SourceInstall rules'#010+
+  '#####################################################################'#010+
   #010+
   #010+
   '.PHONY: fpc_sourceinstall'#010+
   '.PHONY: fpc_sourceinstall'#010+
   #010+
   #010+
@@ -1167,19 +1171,20 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   'fpc_sourceinstall: clean'#010+
   'fpc_sourceinstall: clean'#010+
-  '        $(MKDIR) $(SOURCEINSTALLDIR)'#010+
-  '        $(COPYTREE) $(SOURCETOPDIR) $(SOURCEINST','ALLDIR)'#010+
+  '        $(','MKDIR) $(SOURCEINSTALLDIR)'#010+
+  '        $(COPYTREE) $(SOURCETOPDIR) $(SOURCEINSTALLDIR)'#010+
   #010+
   #010+
   #010+
   #010+
   '[zipinstallrules]'#010+
   '[zipinstallrules]'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   '# Zip'#010+
   '# Zip'#010+
-  '#####################################################################'#010+
+  '#############################################################','#######'+
+  '#'#010+
   #010+
   #010+
   '.PHONY: fpc_zipinstall'#010+
   '.PHONY: fpc_zipinstall'#010+
   #010+
   #010+
   '# Create suffix to add'#010+
   '# Create suffix to add'#010+
-  'ifndef PACKAGESUFF','IX'#010+
+  'ifndef PACKAGESUFFIX'#010+
   'PACKAGESUFFIX=$(OS_TARGET)'#010+
   'PACKAGESUFFIX=$(OS_TARGET)'#010+
   'ifeq ($(OS_TARGET),go32v2)'#010+
   'ifeq ($(OS_TARGET),go32v2)'#010+
   'PACKAGESUFFIX=go32'#010+
   'PACKAGESUFFIX=go32'#010+
@@ -1189,26 +1194,26 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
-  '# Temporary path to pack a file'#010+
+  '# Temporary path to pack a',' file'#010+
   'ifndef PACKDIR'#010+
   'ifndef PACKDIR'#010+
   'ifndef inlinux'#010+
   'ifndef inlinux'#010+
   'PACKDIR=$(BASEDIR)/pack_tmp'#010+
   'PACKDIR=$(BASEDIR)/pack_tmp'#010+
   'else'#010+
   'else'#010+
-  'PACKDI','R=/tmp/fpc-pack'#010+
+  'PACKDIR=/tmp/fpc-pack'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   '# Maybe create default zipname from packagename'#010+
   '# Maybe create default zipname from packagename'#010+
   'ifndef ZIPNAME'#010+
   'ifndef ZIPNAME'#010+
   'ifdef PACKAGENAME'#010+
   'ifdef PACKAGENAME'#010+
-  'ZIPNAME=$(PACKAGEPREFIX)$(PACKAGENAME)$(PACKAGESUFFIX)'#010+
+  'ZIPNAME=$(PACKAGEPREFIX)$(PACKAGENAME)$(PACKAGESUFFIX)'#010,
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   '# Use tar by default under linux'#010+
   '# Use tar by default under linux'#010+
   'ifndef USEZIP'#010+
   'ifndef USEZIP'#010+
   'ifdef inlinux'#010+
   'ifdef inlinux'#010+
-  'U','SETAR=1'#010+
+  'USETAR=1'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
@@ -1217,15 +1222,15 @@ const fpcmakeini : array[0..121,1..240] of char=(
   '        @$(ECHO) "Please specify ZIPNAME!"'#010+
   '        @$(ECHO) "Please specify ZIPNAME!"'#010+
   '        @exit 1'#010+
   '        @exit 1'#010+
   'else'#010+
   'else'#010+
-  '        $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)'#010+
+  '        $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(P','ACKDIR)'#010+
   'ifdef USETAR'#010+
   'ifdef USETAR'#010+
   '        $(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT)'#010+
   '        $(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT)'#010+
-  '     ','   cd $(PACKDIR) ; $(TARPROG) c$(TAROPT) --file $(DESTZIPDIR)/$'+
-  '(ZIPNAME)$(TAREXT) * ; cd $(BASEDIR)'#010+
+  '        cd $(PACKDIR) ; $(TARPROG) c$(TAROPT) --file $(DESTZIPDIR)/$(Z'+
+  'IPNAME)$(TAREXT) * ; cd $(BASEDIR)'#010+
   'else'#010+
   'else'#010+
   '        $(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT)'#010+
   '        $(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT)'#010+
-  '        cd $(PACKDIR) ; $(ZIPPROG) -Dr $(ZIPOPT) $(DESTZIPDIR)/$(ZIPNA'+
-  'ME)$(ZIPEXT) * ;',' cd $(BASEDIR)'#010+
+  '        cd ','$(PACKDIR) ; $(ZIPPROG) -Dr $(ZIPOPT) $(DESTZIPDIR)/$(ZIP'+
+  'NAME)$(ZIPEXT) * ; cd $(BASEDIR)'#010+
   'endif'#010+
   'endif'#010+
   '        $(DELTREE) $(PACKDIR)'#010+
   '        $(DELTREE) $(PACKDIR)'#010+
   'endif'#010+
   'endif'#010+
@@ -1235,32 +1240,31 @@ const fpcmakeini : array[0..121,1..240] of char=(
   '.PHONY:  fpc_zipsourceinstall'#010+
   '.PHONY:  fpc_zipsourceinstall'#010+
   #010+
   #010+
   'fpc_zipsourceinstall:'#010+
   'fpc_zipsourceinstall:'#010+
-  '        $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall PACKAGESUFFIX=s'+
-  'rc'#010+
+  '        $(MAKE) fpc_zipinstal','l ZIPTARGET=sourceinstall PACKAGESUFFIX'+
+  '=src'#010+
   #010+
   #010+
   #010+
   #010+
   '[cleanrules]'#010+
   '[cleanrules]'#010+
-  '################','####################################################'+
-  '#'#010+
+  '#####################################################################'#010+
   '# Clean rules'#010+
   '# Clean rules'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   #010+
   #010+
-  '.PHONY: fpc_clean fpc_cleanall fpc_distclean'#010+
+  '.PHONY: fpc_clean fpc_clea','nall fpc_distclean'#010+
   #010+
   #010+
   'ifdef EXTRACLEANUNITS'#010+
   'ifdef EXTRACLEANUNITS'#010+
-  'override CLEANPPUFILES+=$(addsuff','ix $(PPUEXT),$(EXTRACLEANUNITS))'#010+
+  'override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRACLEANUNITS))'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   'ifdef CLEANPPUFILES'#010+
   'ifdef CLEANPPUFILES'#010+
   'ifdef PPUFILES'#010+
   'ifdef PPUFILES'#010+
   'CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))'#010+
   'CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))'#010+
   'else'#010+
   'else'#010+
-  'CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILE'+
-  'S)))'#010+
+  'CLEANPPULINKFILES:=$(wildcar','d $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFI'+
+  'LES)))'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   'endif'#010+
   #010+
   #010+
-  'fpc_clean: $(CL','EANTARGET)'#010+
+  'fpc_clean: $(CLEANTARGET)'#010+
   'ifdef CLEANEXEFILES'#010+
   'ifdef CLEANEXEFILES'#010+
   '        -$(DEL) $(CLEANEXEFILES)'#010+
   '        -$(DEL) $(CLEANEXEFILES)'#010+
   'endif'#010+
   'endif'#010+
@@ -1268,10 +1272,10 @@ const fpcmakeini : array[0..121,1..240] of char=(
   '        -$(DEL) $(CLEANPPUFILES)'#010+
   '        -$(DEL) $(CLEANPPUFILES)'#010+
   'endif'#010+
   'endif'#010+
   'ifneq ($(CLEANPPULINKFILES),)'#010+
   'ifneq ($(CLEANPPULINKFILES),)'#010+
-  '        -$(DEL) $(CLEANPPULINKFILES)'#010+
+  '      ','  -$(DEL) $(CLEANPPULINKFILES)'#010+
   'endif'#010+
   'endif'#010+
   'ifdef CLEANRSTFILES'#010+
   'ifdef CLEANRSTFILES'#010+
-  '        -$(DEL) $(','CLEANRSTFILES)'#010+
+  '        -$(DEL) $(CLEANRSTFILES)'#010+
   'endif'#010+
   'endif'#010+
   'ifdef EXTRACLEANFILES'#010+
   'ifdef EXTRACLEANFILES'#010+
   '        -$(DEL) $(EXTRACLEANFILES)'#010+
   '        -$(DEL) $(EXTRACLEANFILES)'#010+
@@ -1279,40 +1283,42 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'ifdef LIBNAME'#010+
   'ifdef LIBNAME'#010+
   '        -$(DEL) $(LIBNAME)'#010+
   '        -$(DEL) $(LIBNAME)'#010+
   'endif'#010+
   'endif'#010+
-  '        -$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)'+
-  #010+
+  '        -$(DEL) $(FPCMADE) $(PPAS)',' link.res $(FPCEXTFILE) $(REDIRFIL'+
+  'E)'#010+
   #010+
   #010+
   'fpc_distclean: fpc_clean'#010+
   'fpc_distclean: fpc_clean'#010+
   #010+
   #010+
-  'fpc_cleanal','l: $(CLEANTARGET)'#010+
+  'fpc_cleanall: $(CLEANTARGET)'#010+
   'ifdef CLEANEXEFILES'#010+
   'ifdef CLEANEXEFILES'#010+
   '        -$(DEL) $(CLEANEXEFILES)'#010+
   '        -$(DEL) $(CLEANEXEFILES)'#010+
   'endif'#010+
   'endif'#010+
   '        -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIB'+
   '        -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIB'+
-  'EXT) *$(SHAREDLIBEXT) *$(PPLEXT)'#010+
+  'EXT) *$(SHAREDLIBE','XT) *$(PPLEXT)'#010+
   '        -$(DELTREE) *$(SMARTEXT)'#010+
   '        -$(DELTREE) *$(SMARTEXT)'#010+
-  '        -$(DEL) $(FPCMADE) ','$(PPAS) link.res $(FPCEXTFILE) $(REDIRFIL'+
-  'E)'#010+
+  '        -$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)'+
+  #010+
   #010+
   #010+
   #010+
   #010+
   '[dependrules]'#010+
   '[dependrules]'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   '# Depend rules'#010+
   '# Depend rules'#010+
-  '#####################################################################'#010+
+  '####################','################################################'+
+  '#'#010+
   #010+
   #010+
   '.PHONY: fpc_depend'#010+
   '.PHONY: fpc_depend'#010+
   #010+
   #010+
-  'fpc_','depend:'#010+
+  'fpc_depend:'#010+
   '        $(PPDEP) $(UNITOBJECTS)'#010+
   '        $(PPDEP) $(UNITOBJECTS)'#010+
   #010+
   #010+
   #010+
   #010+
   '[inforules]'#010+
   '[inforules]'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   '# Info rules'#010+
   '# Info rules'#010+
-  '#####################################################################'#010+
+  '############################','########################################'+
+  '#'#010+
   #010+
   #010+
-  '.PHONY: fpc_info fpc_cfginfo fpc','_objectinfo fpc_toolsinfo fpc_instal'+
-  'linfo \'#010+
+  '.PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installi'+
+  'nfo \'#010+
   '        fpc_dirinfo'#010+
   '        fpc_dirinfo'#010+
   #010+
   #010+
   'fpc_info: $(INFOTARGET)'#010+
   'fpc_info: $(INFOTARGET)'#010+
@@ -1320,29 +1326,29 @@ const fpcmakeini : array[0..121,1..240] of char=(
   '[info_cfg]'#010+
   '[info_cfg]'#010+
   'fpc_infocfg:'#010+
   'fpc_infocfg:'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
-  '        @$(ECHO)  == Configuration info =='#010+
+  '        @$(ECHO)  == Configuration',' info =='#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)  FPC....... $(FPC)'#010+
   '        @$(ECHO)  FPC....... $(FPC)'#010+
-  '        @$(EC','HO)  Version... $(FPC_VERSION)'#010+
+  '        @$(ECHO)  Version... $(FPC_VERSION)'#010+
   '        @$(ECHO)  CPU....... $(CPU_TARGET)'#010+
   '        @$(ECHO)  CPU....... $(CPU_TARGET)'#010+
   '        @$(ECHO)  Source.... $(OS_SOURCE)'#010+
   '        @$(ECHO)  Source.... $(OS_SOURCE)'#010+
   '        @$(ECHO)  Target.... $(OS_TARGET)'#010+
   '        @$(ECHO)  Target.... $(OS_TARGET)'#010+
-  '        @$(ECHO)'#010+
+  '       ',' @$(ECHO)'#010+
   #010+
   #010+
   '[info_dirs]'#010+
   '[info_dirs]'#010+
   'fpc_infodirs:'#010+
   'fpc_infodirs:'#010+
   'ifdef inlinux'#010+
   'ifdef inlinux'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
-  '       ',' @$(ECHO)  == Directory info =='#010+
+  '        @$(ECHO)  == Directory info =='#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   'ifdef NEEDGCCLIB'#010+
   'ifdef NEEDGCCLIB'#010+
   '        @$(ECHO)  GCC library is needed.'#010+
   '        @$(ECHO)  GCC library is needed.'#010+
   'endif'#010+
   'endif'#010+
   'ifdef NEEDOTHERLIB'#010+
   'ifdef NEEDOTHERLIB'#010+
-  '        @$(ECHO)  Other library is needed.'#010+
+  '        @$(ECHO)  Other library i','s needed.'#010+
   'endif'#010+
   'endif'#010+
   '        @$(ECHO)  Basedir......... $(BASEDIR)'#010+
   '        @$(ECHO)  Basedir......... $(BASEDIR)'#010+
-  '        @$(EC','HO)'#010+
+  '        @$(ECHO)'#010+
   '        @$(ECHO)  GCC library..... $(GCCLIBDIR)'#010+
   '        @$(ECHO)  GCC library..... $(GCCLIBDIR)'#010+
   '        @$(ECHO)  Other library... $(OTHERLIBDIR)'#010+
   '        @$(ECHO)  Other library... $(OTHERLIBDIR)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
@@ -1350,21 +1356,21 @@ const fpcmakeini : array[0..121,1..240] of char=(
   #010+
   #010+
   '[info_tools]'#010+
   '[info_tools]'#010+
   'fpc_infotools:'#010+
   'fpc_infotools:'#010+
-  '        @$(ECHO)'#010+
+  '        @$(','ECHO)'#010+
   '        @$(ECHO)  == Tools info =='#010+
   '        @$(ECHO)  == Tools info =='#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
-  '        @$(ECHO) ',' Pwd....... $(PWD)'#010+
+  '        @$(ECHO)  Pwd....... $(PWD)'#010+
   '        @$(ECHO)  Echo...... $(ECHO)'#010+
   '        @$(ECHO)  Echo...... $(ECHO)'#010+
   'ifdef PPDEP'#010+
   'ifdef PPDEP'#010+
   '        @$(ECHO)  PPDep..... $(PPDEP)'#010+
   '        @$(ECHO)  PPDep..... $(PPDEP)'#010+
   'endif'#010+
   'endif'#010+
   'ifdef PPUMOVE'#010+
   'ifdef PPUMOVE'#010+
-  '        @$(ECHO)  PPUMove... $(PPUMOVE)'#010+
+  '        @$(ECHO)  PPUMove... $(PPUMOVE)',#010+
   'endif'#010+
   'endif'#010+
   'ifdef PPUFILES'#010+
   'ifdef PPUFILES'#010+
   '        @$(ECHO)  PPUFiles.. $(PPUFILES)'#010+
   '        @$(ECHO)  PPUFiles.. $(PPUFILES)'#010+
   'endif'#010+
   'endif'#010+
-  'ifdef ','DATA2INC'#010+
+  'ifdef DATA2INC'#010+
   '        @$(ECHO)  Data2Inc.. $(DATA2INC)'#010+
   '        @$(ECHO)  Data2Inc.. $(DATA2INC)'#010+
   'endif'#010+
   'endif'#010+
   'ifdef SED'#010+
   'ifdef SED'#010+
@@ -1373,11 +1379,11 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'ifdef DATE'#010+
   'ifdef DATE'#010+
   '        @$(ECHO)  Date...... $(DATE)'#010+
   '        @$(ECHO)  Date...... $(DATE)'#010+
   'endif'#010+
   'endif'#010+
-  'ifdef DIFF'#010+
+  'ifd','ef DIFF'#010+
   '        @$(ECHO)  Diff...... $(DIFF)'#010+
   '        @$(ECHO)  Diff...... $(DIFF)'#010+
   'endif'#010+
   'endif'#010+
   'ifdef CMP'#010+
   'ifdef CMP'#010+
-  '        @$(ECH','O)  Cmp....... $(CMP)'#010+
+  '        @$(ECHO)  Cmp....... $(CMP)'#010+
   'endif'#010+
   'endif'#010+
   'ifdef UPXPROG'#010+
   'ifdef UPXPROG'#010+
   '        @$(ECHO)  Upx....... $(UPXPROG)'#010+
   '        @$(ECHO)  Upx....... $(UPXPROG)'#010+
@@ -1385,25 +1391,25 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'ifdef ZIPPROG'#010+
   'ifdef ZIPPROG'#010+
   '        @$(ECHO)  Zip....... $(ZIPPROG)'#010+
   '        @$(ECHO)  Zip....... $(ZIPPROG)'#010+
   'endif'#010+
   'endif'#010+
-  '        @$(ECHO)'#010+
+  '        @$(ECHO)'#010,
   #010+
   #010+
   '[info_objects]'#010+
   '[info_objects]'#010+
   'fpc_infoobjects:'#010+
   'fpc_infoobjects:'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
-  '        @$(ECHO)  == Obje','ct info =='#010+
+  '        @$(ECHO)  == Object info =='#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)  LoaderObjects..... $(LOADEROBJECTS)'#010+
   '        @$(ECHO)  LoaderObjects..... $(LOADEROBJECTS)'#010+
   '        @$(ECHO)  UnitObjects....... $(UNITOBJECTS)'#010+
   '        @$(ECHO)  UnitObjects....... $(UNITOBJECTS)'#010+
-  '        @$(ECHO)  ExeObjects........ $(EXEOBJECTS)'#010+
+  '        @$(ECHO)  ExeObjects...','..... $(EXEOBJECTS)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
-  '        @$(ECHO)  ExtraCleanUnits... $','(EXTRACLEANUNITS)'#010+
+  '        @$(ECHO)  ExtraCleanUnits... $(EXTRACLEANUNITS)'#010+
   '        @$(ECHO)  ExtraCleanFiles... $(EXTRACLEANFILES)'#010+
   '        @$(ECHO)  ExtraCleanFiles... $(EXTRACLEANFILES)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)  ExtraInstallUnits. $(EXTRAINSTALLUNITS)'#010+
   '        @$(ECHO)  ExtraInstallUnits. $(EXTRAINSTALLUNITS)'#010+
-  '        @$(ECHO)  ExtraInstallFiles. $(EXTRAINSTALLFILES)'#010+
+  '        @$(ECHO)','  ExtraInstallFiles. $(EXTRAINSTALLFILES)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   #010+
   #010+
-  '[info_install]'#010,
+  '[info_install]'#010+
   'fpc_infoinstall:'#010+
   'fpc_infoinstall:'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)  == Install info =='#010+
   '        @$(ECHO)  == Install info =='#010+
@@ -1411,35 +1417,34 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'ifdef DATE'#010+
   'ifdef DATE'#010+
   '        @$(ECHO)  DateStr.............. $(DATESTR)'#010+
   '        @$(ECHO)  DateStr.............. $(DATESTR)'#010+
   'endif'#010+
   'endif'#010+
-  'ifdef PACKAGEPREFIX'#010+
+  'ifdef PAC','KAGEPREFIX'#010+
   '        @$(ECHO)  PackagePrefix........ $(PACKAGEPREFIX)'#010+
   '        @$(ECHO)  PackagePrefix........ $(PACKAGEPREFIX)'#010+
   'endif'#010+
   'endif'#010+
-  'i','fdef PACKAGENAME'#010+
+  'ifdef PACKAGENAME'#010+
   '        @$(ECHO)  PackageName.......... $(PACKAGENAME)'#010+
   '        @$(ECHO)  PackageName.......... $(PACKAGENAME)'#010+
   'endif'#010+
   'endif'#010+
   '        @$(ECHO)  PackageSuffix........ $(PACKAGESUFFIX)'#010+
   '        @$(ECHO)  PackageSuffix........ $(PACKAGESUFFIX)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
-  '        @$(ECHO)  BaseInstallDir....... $(BASEINSTALLDIR)'#010+
-  '        @$(ECHO)  BinInstallDi','r........ $(BININSTALLDIR)'#010+
+  '        @$(EC','HO)  BaseInstallDir....... $(BASEINSTALLDIR)'#010+
+  '        @$(ECHO)  BinInstallDir........ $(BININSTALLDIR)'#010+
   '        @$(ECHO)  LibInstallDir........ $(LIBINSTALLDIR)'#010+
   '        @$(ECHO)  LibInstallDir........ $(LIBINSTALLDIR)'#010+
   '        @$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)'#010+
   '        @$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)'#010+
-  '        @$(ECHO)  SourceInstallDir..... $(SOURCEINSTALLDIR)'#010+
-  '        @$(ECHO)  DocInstallDir.......','. $(DOCINSTALLDIR)'#010+
+  '        @$(ECHO)  Sourc','eInstallDir..... $(SOURCEINSTALLDIR)'#010+
+  '        @$(ECHO)  DocInstallDir........ $(DOCINSTALLDIR)'#010+
   '        @$(ECHO)  DataInstallDir....... $(DATAINSTALLDIR)'#010+
   '        @$(ECHO)  DataInstallDir....... $(DATAINSTALLDIR)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)  DestZipDir........... $(DESTZIPDIR)'#010+
   '        @$(ECHO)  DestZipDir........... $(DESTZIPDIR)'#010+
-  '        @$(ECHO)  ZipName.............. $(ZIPNAME)'#010+
+  '        @$(ECHO) ',' ZipName.............. $(ZIPNAME)'#010+
   '        @$(ECHO)'#010+
   '        @$(ECHO)'#010+
   #010+
   #010+
   '[directorytargets]'#010+
   '[directorytargets]'#010+
-  '####','################################################################'+
-  '#'#010+
+  '#####################################################################'#010+
   '# Directories'#010+
   '# Directories'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   #010+
   #010+
-  '[localmakefile]'#010+
+  '[localmakefile',']'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
-  '# L','ocal Makefile'#010+
+  '# Local Makefile'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   #010+
   #010+
   'ifneq ($(wildcard fpcmake.loc),)'#010+
   'ifneq ($(wildcard fpcmake.loc),)'#010+
@@ -1447,8 +1452,9 @@ const fpcmakeini : array[0..121,1..240] of char=(
   'endif'#010+
   'endif'#010+
   #010+
   #010+
   '[userrules]'#010+
   '[userrules]'#010+
-  '#####################################################################'#010+
-  '# Users rules',#010+
+  '########','############################################################'+
+  '#'#010+
+  '# Users rules'#010+
   '#####################################################################'#010+
   '#####################################################################'#010+
   #010+
   #010+
   #010+
   #010+

+ 17 - 12
utils/fpcmake.ini

@@ -1018,6 +1018,12 @@ fpc_debug:
 
 
 .PHONY: fpc_smart fpc_shared
 .PHONY: fpc_smart fpc_shared
 
 
+ifdef LIBVERSION
+LIBFULLNAME=$(LIBNAME).$(LIBVERSION)
+else
+LIBFULLNAME=$(LIBNAME)
+endif
+
 # Default sharedlib units are all unit objects
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
 ifndef SHAREDLIBUNITOBJECTS
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
@@ -1031,7 +1037,7 @@ ifdef inlinux
 ifndef LIBNAME
 ifndef LIBNAME
         @$(ECHO) "LIBNAME not set"
         @$(ECHO) "LIBNAME not set"
 else
 else
-        $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBNAME)
+        $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)
 endif
 endif
 else
 else
         @$(ECHO) "Shared Libraries not supported"
         @$(ECHO) "Shared Libraries not supported"
@@ -1051,14 +1057,7 @@ endif
 
 
 ifdef INSTALLPPUFILES
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef PPUFILES
-ifdef inlinux
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-ifdef LIBNAME
-INSTALLPPULIBFILES=$(LIBNAME)
-endif
-else
-INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
-endif
 else
 else
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
@@ -1073,8 +1072,11 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
         @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
         @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
-        @$(ECHO) -e $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
+ifneq ($(wildcard $(LIBFULLNAME)),)
+        @$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)
+ifdef inlinux
+        @$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
@@ -1097,9 +1099,12 @@ ifdef INSTALLPPUFILES
 ifneq ($(INSTALLPPULINKFILES),)
 ifneq ($(INSTALLPPULINKFILES),)
         $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
         $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
 endif
 endif
-ifneq ($(INSTALLPPULIBFILES),)
+ifneq ($(wildcard $(LIBFULLNAME)),)
         $(MKDIR) $(LIBINSTALLDIR)
         $(MKDIR) $(LIBINSTALLDIR)
-        $(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
+        $(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)
+ifdef inlinux
+        ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)
+endif
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES

+ 8 - 1
utils/fpcmake.pp

@@ -169,6 +169,7 @@ type
     RequirePackages,
     RequirePackages,
     RequireComponents : TTargetsString;
     RequireComponents : TTargetsString;
     LibName,
     LibName,
+    LibVersion,
     LibUnits       : string;
     LibUnits       : string;
     LibGCC,
     LibGCC,
     LibOther       : boolean;
     LibOther       : boolean;
@@ -426,6 +427,7 @@ begin
      DirInc:=ReadString(ini_dirs,'incdir','');
      DirInc:=ReadString(ini_dirs,'incdir','');
    { libs }
    { libs }
      LibName:=ReadString(ini_libs,'libname','');
      LibName:=ReadString(ini_libs,'libname','');
+     LibVersion:=ReadString(ini_libs,'libversion','');
      LibUnits:=ReadString(ini_libs,'libunits','');
      LibUnits:=ReadString(ini_libs,'libunits','');
      LibGcc:=ReadBool(ini_libs,'libgcc',false);
      LibGcc:=ReadBool(ini_libs,'libgcc',false);
      LibOther:=ReadBool(ini_libs,'libother',false);
      LibOther:=ReadBool(ini_libs,'libother',false);
@@ -1079,6 +1081,8 @@ begin
      AddHead('Libraries');
      AddHead('Libraries');
      if userini.libname<>'' then
      if userini.libname<>'' then
       Add('LIBNAME='+userini.libname);
       Add('LIBNAME='+userini.libname);
+     if userini.libversion<>'' then
+      Add('LIBVERSION='+userini.libversion);
      if userini.libunits<>'' then
      if userini.libunits<>'' then
       Add('SHAREDLIBUNITOBJECTS='+userini.libunits);
       Add('SHAREDLIBUNITOBJECTS='+userini.libunits);
      if userini.libgcc then
      if userini.libgcc then
@@ -1305,7 +1309,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.35  2000-05-11 17:59:12  peter
+  Revision 1.36  2000-06-01 12:35:04  peter
+    * library support including symlink of .so to .so.1.0
+
+  Revision 1.35  2000/05/11 17:59:12  peter
     * makeini unit added as replacement for old inifiles unit
     * makeini unit added as replacement for old inifiles unit
 
 
   Revision 1.34  2000/04/11 15:34:58  peter
   Revision 1.34  2000/04/11 15:34:58  peter