Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Jul 1997 11:07:19 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        kent@erlang.ericsson.se
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Application os version compatibility?
Message-ID:  <199707061807.LAA16083@phaeton.artisoft.com>
In-Reply-To: <199707060136.DAA28936@townsend.ericsson.se> from "Kent Boortz" at Jul 6, 97 03:36:17 am

next in thread | previous in thread | raw e-mail | index | archive | help
> I know some just link "libc.2.2" to "libc.3.0" to get *some*
> applications working that was built for another os version than
> the one running but there must be a better way to create
> applications that will survive over os version?
> 
> A reasonable rule would be that
> 
>     - If changing the third version number applications with 
>       shared libraries will still work.
> 
>     - If changing the second number staticly linked will still work.

There is no reason for this distinction.  Statically linked
applications never quit working unless there is a system interface
change without a backward compatability provision (it is policy
that can not happen).


A minor number rev on a shared library means

	1)	Interface or parametric functionality ADDED.

	2)	No interface or parametric functionality
		DELETED.

	3)	No interface or parametric functionality
		MODIFIED.

A major number rev on a shared library means

	1)	Interface or parametric functionality MAY
		have been ADDED.

	AND

	2)	Interface or parameteric functionality was
		DELETED.

	OR

	3)	Interface or parametric functionality was
		MODIFIED.


So for a library revision X.Y with an application linked against x.y:

	1)	if X > x, application MAY NOT work

			To work, the application MUST NOT
			reference DELETED or MODIFIED interfaces

	2)	if X < x, application MAY NOT work

			To work, the application MUST NOT
			reference ADDED or MODIFIED interfaces

	3)	if X == x, and

		Y > y, application MUST work

		y > Y, application MAY NOT work

			To work, the application MUST NOT
			reference ADDED interfaces


					Regards,
					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707061807.LAA16083>