From 6d6407f57c3e1a7067d92dac0167fcc19ed5c1d4 Mon Sep 17 00:00:00 2001 From: Shehzan Mohammed Date: Thu, 28 May 2015 16:26:13 -0400 Subject: [PATCH] Fix the symbolic links for libraries on unix based systems * New links are: * libGLEW.so -> libGLEW.so.(major) * libGLEW.so.(major) -> libGLEW.so.(major).(minor) * libGLEW.so.(major).(minor) -> libGLEW.so.(major).(minor).(micro) * No changes to systems where dll or single library is created without symlinks --- Makefile | 50 +++++++++++++++++++++----------- config/Makefile.darwin | 6 ++-- config/Makefile.darwin-ppc | 6 ++-- config/Makefile.darwin-universal | 10 ++++--- config/Makefile.darwin-x86_64 | 6 ++-- config/Makefile.freebsd | 10 ++++--- config/Makefile.gnu | 10 ++++--- config/Makefile.haiku | 10 ++++--- config/Makefile.irix | 10 ++++--- config/Makefile.kfreebsd | 10 ++++--- config/Makefile.linux | 10 ++++--- config/Makefile.nacl-32 | 10 ++++--- config/Makefile.nacl-64 | 10 ++++--- config/Makefile.netbsd | 12 ++++---- config/Makefile.openbsd | 10 ++++--- config/Makefile.solaris | 6 ++-- config/Makefile.solaris-gcc | 10 ++++--- config/version | 5 ++-- 18 files changed, 125 insertions(+), 76 deletions(-) diff --git a/Makefile b/Makefile index 792e779..5fd2776 100644 --- a/Makefile +++ b/Makefile @@ -4,24 +4,24 @@ ## Copyright (C) 2002-2008, Marcelo E. Magallon ## Copyright (C) 2002, Lev Povalahev ## All rights reserved. -## -## Redistribution and use in source and binary forms, with or without +## +## Redistribution and use in source and binary forms, with or without ## modification, are permitted provided that the following conditions are met: -## -## * Redistributions of source code must retain the above copyright notice, +## +## * Redistributions of source code must retain the above copyright notice, ## this list of conditions and the following disclaimer. -## * Redistributions in binary form must reproduce the above copyright notice, -## this list of conditions and the following disclaimer in the documentation +## * Redistributions in binary form must reproduce the above copyright notice, +## this list of conditions and the following disclaimer in the documentation ## and/or other materials provided with the distribution. -## * The name of the author may be used to endorse or promote products +## * The name of the author may be used to endorse or promote products ## derived from this software without specific prior written permission. ## -## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -## AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +## AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -## ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -## LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -## CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +## ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +## LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +## CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF ## SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS ## INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN ## CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) @@ -116,9 +116,13 @@ endif lib/$(LIB.SHARED): $(LIB.SOBJS) $(LD) $(LDFLAGS.SO) -o $@ $^ $(LIB.LDFLAGS) $(LIB.LIBS) -ifneq ($(LN),) +ifdef LIB.SONAME $(LN) $(LIB.SHARED) lib/$(LIB.SONAME) - $(LN) $(LIB.SHARED) lib/$(LIB.DEVLNK) + $(LN) $(LIB.SONAME) lib/$(LIB.DEVLNK) +else + $(LN) $(LIB.SHARED) lib/$(LIB.SONAME.MINOR) + $(LN) $(LIB.SONAME.MINOR) lib/$(LIB.SONAME.MAJOR) + $(LN) $(LIB.SONAME.MAJOR) lib/$(LIB.DEVLNK) endif ifneq ($(STRIP),) $(STRIP) -x $@ @@ -165,8 +169,14 @@ endif lib/$(LIB.SHARED.MX): $(LIB.SOBJS.MX) $(LD) $(LDFLAGS.SO.MX) -o $@ $^ $(LIB.LDFLAGS) $(LIB.LIBS) ifneq ($(LN),) +ifdef LIB.SONAME.MX $(LN) $(LIB.SHARED.MX) lib/$(LIB.SONAME.MX) - $(LN) $(LIB.SHARED.MX) lib/$(LIB.DEVLNK.MX) + $(LN) $(LIB.SONAME.MX) lib/$(LIB.DEVLNK.MX) +else + $(LN) $(LIB.SHARED.MX) lib/$(LIB.SONAME.MINOR.MX) + $(LN) $(LIB.SONAME.MINOR.MX) lib/$(LIB.SONAME.MAJOR.MX) + $(LN) $(LIB.SONAME.MAJOR.MX) lib/$(LIB.DEVLNK.MX) +endif endif ifneq ($(STRIP),) $(STRIP) -x $@ @@ -215,7 +225,7 @@ VISUALINFO.BIN.OBJ := $(VISUALINFO.BIN.OBJ:.c=.o) ifneq ($(filter nacl%,$(SYSTEM)),) glew.bin: glew.lib bin else -glew.bin: glew.lib bin bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) +glew.bin: glew.lib bin bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) endif bin: @@ -320,8 +330,14 @@ uninstall: ifeq ($(filter-out mingw% cygwin,$(SYSTEM)),) $(RM) "$(DESTDIR)$(BINDIR)/$(LIB.SHARED)" "$(DESTDIR)$(BINDIR)/$(LIB.SHARED.MX)" else +ifdef LIB.SONAME $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME)" "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME.MX)" $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SHARED)" "$(DESTDIR)$(LIBDIR)/$(LIB.SHARED.MX)" +else + $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME.MINOR)" "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME.MINOR.MX)" + $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME.MAJOR)" "$(DESTDIR)$(LIBDIR)/$(LIB.SONAME.MAJOR.MX)" + $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.SHARED)" "$(DESTDIR)$(LIBDIR)/$(LIB.SHARED.MX)" +endif endif $(RM) "$(DESTDIR)$(LIBDIR)/$(LIB.STATIC)" "$(DESTDIR)$(LIBDIR)/$(LIB.STATIC.MX)" $(RM) "$(DESTDIR)$(BINDIR)/$(GLEWINFO.BIN)" "$(DESTDIR)$(BINDIR)/$(VISUALINFO.BIN)" @@ -347,7 +363,7 @@ dist-win32: cp -a bin $(DIST_DIR) cp -a lib $(DIST_DIR) $(RM) -f $(DIST_DIR)/bin/*/*/*.pdb $(DIST_DIR)/bin/*/*/*.exp - $(RM) -f $(DIST_DIR)/bin/*/*/glewinfo-*.exe $(DIST_DIR)/bin/*/*/visualinfo-*.exe + $(RM) -f $(DIST_DIR)/bin/*/*/glewinfo-*.exe $(DIST_DIR)/bin/*/*/visualinfo-*.exe $(RM) -f $(DIST_DIR)/lib/*/*/*.pdb $(DIST_DIR)/lib/*/*/*.exp unix2dos $(DIST_DIR)/include/GL/*.h unix2dos $(DIST_DIR)/doc/*.txt diff --git a/config/Makefile.darwin b/config/Makefile.darwin index bf34a0e..a9612f6 100644 --- a/config/Makefile.darwin +++ b/config/Makefile.darwin @@ -16,12 +16,14 @@ WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = -LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MAJOR = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MINOR = $(LIB.SONAME.MAJOR).$(SO_MINOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) -LIB.SONAME.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MINOR.MX = $(LIB.SONAME.MAJOR.MX).$(SO_MINOR).dylib LIB.DEVLNK.MX = lib$(NAME)mx.dylib LIB.SHARED.MX = lib$(NAME)mx.$(SO_VERSION).dylib LIB.STATIC.MX = lib$(NAME)mx.a diff --git a/config/Makefile.darwin-ppc b/config/Makefile.darwin-ppc index 46c8b73..e2e34d5 100644 --- a/config/Makefile.darwin-ppc +++ b/config/Makefile.darwin-ppc @@ -16,12 +16,14 @@ WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = -LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MAJOR = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MINOR = $(LIB.SONAME.MAJOR).$(SO_MINOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) -LIB.SONAME.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MINOR.MX = $(LIB.SONAME.MAJOR.MX).$(SO_MINOR).dylib LIB.DEVLNK.MX = lib$(NAME)mx.dylib LIB.SHARED.MX = lib$(NAME)mx.$(SO_VERSION).dylib LIB.STATIC.MX = lib$(NAME)mx.a diff --git a/config/Makefile.darwin-universal b/config/Makefile.darwin-universal index 5f3f278..b8f750a 100644 --- a/config/Makefile.darwin-universal +++ b/config/Makefile.darwin-universal @@ -1,9 +1,9 @@ NAME = $(GLEW_NAME) CC = cc LD = cc -AR = +AR = LIBTOOL = libtool -static -o -STRIP = +STRIP = CFLAGS.EXTRA = -dynamic -fno-common #CFLAGS.EXTRA += -no-cpp-precomp CFLAGS.EXTRA += -arch i386 -arch x86_64 @@ -19,12 +19,14 @@ WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = -LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MAJOR = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MINOR = $(LIB.SONAME.MAJOR).$(SO_MINOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) -LIB.SONAME.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MINOR.MX = $(LIB.SONAME.MAJOR.MX).$(SO_MINOR).dylib LIB.DEVLNK.MX = lib$(NAME)mx.dylib LIB.SHARED.MX = lib$(NAME)mx.$(SO_VERSION).dylib LIB.STATIC.MX = lib$(NAME)mx.a diff --git a/config/Makefile.darwin-x86_64 b/config/Makefile.darwin-x86_64 index e6eb050..eda70fe 100644 --- a/config/Makefile.darwin-x86_64 +++ b/config/Makefile.darwin-x86_64 @@ -16,12 +16,14 @@ WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = -LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MAJOR = lib$(NAME).$(SO_MAJOR).dylib +LIB.SONAME.MINOR = $(LIB.SONAME.MAJOR).$(SO_MINOR).dylib LIB.DEVLNK = lib$(NAME).dylib LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib LIB.STATIC = lib$(NAME).a LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR) -LIB.SONAME.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.$(SO_MAJOR).dylib +LIB.SONAME.MINOR.MX = $(LIB.SONAME.MAJOR.MX).$(SO_MINOR).dylib LIB.DEVLNK.MX = lib$(NAME)mx.dylib LIB.SHARED.MX = lib$(NAME)mx.$(SO_VERSION).dylib LIB.STATIC.MX = lib$(NAME)mx.a diff --git a/config/Makefile.freebsd b/config/Makefile.freebsd index ca2771d..5b7d18a 100644 --- a/config/Makefile.freebsd +++ b/config/Makefile.freebsd @@ -10,13 +10,15 @@ NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -soname $(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -soname $(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.gnu b/config/Makefile.gnu index b7c58be..ac9981f 100644 --- a/config/Makefile.gnu +++ b/config/Makefile.gnu @@ -10,13 +10,15 @@ WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.haiku b/config/Makefile.haiku index ce832f9..7fb465f 100644 --- a/config/Makefile.haiku +++ b/config/Makefile.haiku @@ -15,15 +15,17 @@ POPT = -O2 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) +LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME.MAJOR) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.irix b/config/Makefile.irix index a1be5ee..8002c85 100644 --- a/config/Makefile.irix +++ b/config/Makefile.irix @@ -10,13 +10,15 @@ NAME = GLEW WARN = -fullwarn -woff 1110,1498 POPT = -O2 -OPT:Olimit=0 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -soname $(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -soname $(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.kfreebsd b/config/Makefile.kfreebsd index faf1046..f5f39c5 100644 --- a/config/Makefile.kfreebsd +++ b/config/Makefile.kfreebsd @@ -10,13 +10,15 @@ WARN = -Wall -W POPT = -O2 CFLAGS.EXTRA += -fPIC BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -Wl,-soname $(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -Wl,-soname $(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -Wl,-soname $(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -Wl,-soname $(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.linux b/config/Makefile.linux index 55e4a23..590c01c 100644 --- a/config/Makefile.linux +++ b/config/Makefile.linux @@ -25,13 +25,15 @@ POPT = -O2 CFLAGS.EXTRA += -fPIC CFLAGS.EXTRA += -Wcast-qual BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.nacl-32 b/config/Makefile.nacl-32 index 2a5cec7..a6ede48 100644 --- a/config/Makefile.nacl-32 +++ b/config/Makefile.nacl-32 @@ -24,13 +24,15 @@ LDFLAGS.DYNAMIC = -shared WARN = -Wall -W -Wno-unused-parameter POPT = -O2 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME.MX) +LDFLAGS.SO.MX = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.nacl-64 b/config/Makefile.nacl-64 index 37cb6e9..ff0d260 100644 --- a/config/Makefile.nacl-64 +++ b/config/Makefile.nacl-64 @@ -24,13 +24,15 @@ LDFLAGS.DYNAMIC = -shared WARN = -Wall -W -Wno-unused-parameter POPT = -O2 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME.MX) +LDFLAGS.SO.MX = $(LDFLAGS.DYNAMIC) -soname=$(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.netbsd b/config/Makefile.netbsd index 6da47b1..64caaa4 100644 --- a/config/Makefile.netbsd +++ b/config/Makefile.netbsd @@ -1,7 +1,7 @@ NAME = $(GLEW_NAME) CC = cc LD = ld -LDFLAGS.EXTRA = -L/usr/X11R7/lib -R /usr/X11R7/lib +LDFLAGS.EXTRA = -L/usr/X11R7/lib -R /usr/X11R7/lib LDFLAGS.GL = -lGL -lX11 LDFLAGS.STATIC = -Wl,-Bstatic LDFLAGS.DYNAMIC = -Wl,-Bdynamic @@ -10,13 +10,15 @@ NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -soname $(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -soname $(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.openbsd b/config/Makefile.openbsd index ade993e..a2cc601 100644 --- a/config/Makefile.openbsd +++ b/config/Makefile.openbsd @@ -10,13 +10,15 @@ NAME = GLEW WARN = -Wall -W POPT = -O2 BIN.SUFFIX = -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -soname $(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -soname $(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -soname $(LIB.SONAME.MAJOR.MX) diff --git a/config/Makefile.solaris b/config/Makefile.solaris index 96e6d1f..65fa34a 100644 --- a/config/Makefile.solaris +++ b/config/Makefile.solaris @@ -8,11 +8,13 @@ LDFLAGS.GL = -lGL -lX11 NAME = GLEW BIN.SUFFIX = POPT = -xO2 -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a diff --git a/config/Makefile.solaris-gcc b/config/Makefile.solaris-gcc index d66395b..2c63839 100644 --- a/config/Makefile.solaris-gcc +++ b/config/Makefile.solaris-gcc @@ -8,13 +8,15 @@ LDFLAGS.GL = -lGL -lX11 NAME = GLEW BIN.SUFFIX = POPT = -O2 -LIB.SONAME = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MAJOR = lib$(NAME).so.$(SO_MAJOR) +LIB.SONAME.MINOR = ${LIB.SONAME.MAJOR}.$(SO_MINOR) LIB.DEVLNK = lib$(NAME).so LIB.SHARED = lib$(NAME).so.$(SO_VERSION) LIB.STATIC = lib$(NAME).a -LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME) -LIB.SONAME.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME.MAJOR) +LIB.SONAME.MAJOR.MX = lib$(NAME)mx.so.$(SO_MAJOR) +LIB.SONAME.MINOR.MX = ${LIB.SONAME.MAJOR.MX}.$(SO_MINOR) LIB.DEVLNK.MX = lib$(NAME)mx.so LIB.SHARED.MX = lib$(NAME)mx.so.$(SO_VERSION) LIB.STATIC.MX = lib$(NAME)mx.a -LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MX) +LDFLAGS.SO.MX = -shared -Wl,-soname=$(LIB.SONAME.MAJOR.MX) diff --git a/config/version b/config/version index b6a9753..d0c9ab2 100644 --- a/config/version +++ b/config/version @@ -3,5 +3,6 @@ GLEW_MINOR = 12 GLEW_MICRO = 0 GLEW_VERSION = $(GLEW_MAJOR).$(GLEW_MINOR).$(GLEW_MICRO) GLEW_NAME = GLEW -SO_MAJOR = $(GLEW_MAJOR).$(GLEW_MINOR) -SO_VERSION = $(GLEW_VERSION) +SO_MAJOR = $(GLEW_MAJOR) +SO_MINOR = $(GLEW_MINOR) +SO_VERSION = $(GLEW_VERSION)