uname_rs := $(shell uname -rs)
libname := osl
-ifeq ($(uname_s),Linux)
- # On Linux, the following conventions apply (see dhweeler's Program
- # Library HOWTO):
- #
- # The soname has the prefix ``lib'', the name of the library, the
- # phrase ``.so'', followed by a period and a version number that is
- # incremented whenever the interface changes.
- soname := lib$(libname).so.$(x)
-
- # The real name adds to the soname a period, a minor number, another
- # period, and the release number.
- realname := $(soname).$(y).$(z)
-
- # In addition, there's the name that the compiler uses when requesting
- # a library, (I'll call it the ``linker name''), which is simply the
- # soname without any version number.
- linkername := lib$(libname).so
+# On ELf-based systems, the following conventions apply (see dhweeler's Program
+# Library HOWTO):
+#
+# The soname has the prefix ``lib'', the name of the library, the
+# phrase ``.so'', followed by a period and a version number that is
+# incremented whenever the interface changes.
+soname := lib$(libname).so.$(x)
+
+# The real name adds to the soname a period, a minor number, another
+# period, and the release number.
+realname := $(soname).$(y).$(z)
+
+# In addition, there's the name that the compiler uses when requesting
+# a library, (I'll call it the ``linker name''), which is simply the
+# soname without any version number.
+linkername := lib$(libname).so
+
+ifeq ($(uname_s),Linux)
LDFLAGS += --shared
LDFLAGS += -Wl,-soname,$(soname)
# disallow undefined symbols
endif
ifeq ($(uname_s),Darwin)
# Darwin has its own idea on version numbers:
- #
realname := lib$(libname).$(x).dylib
soname := $(realname)
linkername := lib$(libname).so
LDFLAGS += --shared
LDFLAGS += -z text
LDFLAGS += -z defs
- soname := lib$(libname).so.$(x)
- realname := $(soname).$(y).$(z)
- linkername := lib$(libname).so
CPPFLAGS += -I/opt/csw/include
LDFLAGS += -lc
endif