From 7e5b8e412f8cdbf2a5865ba38ede1cc233cf731c Mon Sep 17 00:00:00 2001 From: Andreas Metzler Date: Sun, 29 Aug 2010 16:13:41 +0200 Subject: [PATCH] Add version script versioning for libwraster Enable symbol-versioning for libwraster and stop exporting public symbols. --- configure.ac | 2 + wrlib/Makefile.am | 4 ++ wrlib/libwraster.map | 100 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 106 insertions(+) create mode 100644 wrlib/libwraster.map diff --git a/configure.ac b/configure.ac index a8535770..5a1276fb 100644 --- a/configure.ac +++ b/configure.ac @@ -837,6 +837,8 @@ if test "$enableval" = yes; then fi ) +gl_LD_VERSION_SCRIPT + AC_OUTPUT(Makefile po/Makefile util/Makefile util/po/Makefile \ WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \ WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \ diff --git a/wrlib/Makefile.am b/wrlib/Makefile.am index 47e90af0..815514cd 100644 --- a/wrlib/Makefile.am +++ b/wrlib/Makefile.am @@ -10,6 +10,10 @@ lib_LTLIBRARIES = libwraster.la libwraster_la_LDFLAGS = -version-info @WRASTER_VERSION@ +if HAVE_LD_VERSION_SCRIPT +libwraster_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libwraster.map +endif + bin_SCRIPTS = get-wraster-flags include_HEADERS = wraster.h diff --git a/wrlib/libwraster.map b/wrlib/libwraster.map new file mode 100644 index 00000000..895a7b1d --- /dev/null +++ b/wrlib/libwraster.map @@ -0,0 +1,100 @@ +/* libwraster.map - libtool symbol version script for libwraster + * Copyright (c) 2010 Andreas Metzler + * + * This file is part of the Raster graphics library + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this library. If not, see . + */ + +LIBWRASTER3 +{ + global: + RBevelImage; + RBlurImage; + RClearImage; + RCloneImage; + RCombineArea; + RCombineAreaWithOpaqueness; + RCombineImages; + RCombineImagesWithOpaqueness; + RCombineImageWithColor; + RConvertImage; + RConvertImageMask; + RCopyArea; + RCreateContext; + RCreateImage; + RCreateImageFromDrawable; + RCreateImageFromXImage; + RCreateXImage; + RDestroyXImage; + RDrawLine; + RDrawLines; + RDrawSegments; + RErrorCode; + RFillImage; + RGetClosestXColor; + RGetImageFileFormat; + RGetImageFromXPMData; + RGetPixel; + RGetSubImage; + RGetXImage; + RHSVtoRGB; + RLoadImage; + RMakeCenteredImage; + RMakeTiledImage; + RMessageForError; + ROperateLine; + ROperateLines; + ROperatePixel; + ROperatePixels; + ROperateSegments; + RPutPixel; + RPutPixels; + RPutXImage; + RReleaseImage; + RRenderGradient; + RRenderInterwovenGradient; + RRenderMultiGradient; + RRetainImage; + RRGBtoHSV; + RRotateImage; + RSaveImage; + RScaleImage; + RSmoothScaleImage; + RSupportedFileFormats; + + local: +# _edata +# _end +# _fini +# _init +# __bss_start +# calculateCombineArea +# contrib +# R_CreateXImageMappedPixmap +# RLoadGIF +# RLoadJPEG +# RLoadPNG +# RLoadPPM +# RLoadTIFF +# RLoadXPM +# RSaveXPM +# _wraster_change_filter +# WRasterLibVersion +# x86_check_mmx +# x86_mmx_TrueColor_24_to_16 +# x86_mmx_TrueColor_32_to_16 +# x86_PseudoColor_32_to_8 + *; +};