X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libatalk%2FMakefile.am;h=cb1b6d2bf72500481d32528c8ba502ecb639bab5;hb=f2d81f1a92e5e8348e174a843c2b1cdd0e77ae01;hp=a027c81ee2f8357c0c06a448dbedbfbc6e3b9d77;hpb=a83e8197c7b8af45f8d56acf158920c03698bfc6;p=netatalk.git diff --git a/libatalk/Makefile.am b/libatalk/Makefile.am index a027c81e..cb1b6d2b 100644 --- a/libatalk/Makefile.am +++ b/libatalk/Makefile.am @@ -1,7 +1,34 @@ - # Makefile.am for libatalk/ -# rpc should be first because it generates RPC headers included elsewhere +# This is the version info for the libatalk binary API. It has three +# numbers: +# +# Current -- the number of the binary API that we're implementing +# Revision -- which iteration of the implementation of the binary +# API are we supplying? +# Age -- How many previous binary API versions do we also +# support? +# +# To increment a VERSION_INFO (current:revision:age): +# If the ABI didn't change: +# Return (current:revision+1:age) +# If the ABI changed, but it's backward-compatible: +# Return (current+1:0:age+1) +# If the ABI changed and it isn't backward-compatible: +# Return (current+1:0:0) +# +# Once an RC is out, DO NOT MAKE ANY ABI-BREAKING CHANGES IN THAT SERIES +# UNLESS YOU REALLY REALLY HAVE TO. + +VERSION_INFO = 1:0:0 + +# History: VERSION_INFO +# +# 3.0.0-alpha1 0:0:0 +# 3.0.0-alpha2 0:0:0 +# 3.0.0-alpha3 0:0:0 +# 3.0.0-beta1 0:0:0 + SUBDIRS = acl adouble bstring compat cnid dsi iniparser tdb util unicode vfs lib_LTLIBRARIES = libatalk.la @@ -35,4 +62,28 @@ libatalk_la_DEPENDENCIES = \ util/libutil.la \ vfs/libvfs.la -libatalk_la_LDFLAGS = -version-info 0:0:0 +libatalk_la_LDFLAGS = -version-info $(VERSION_INFO) + +if DEVELOPER +all-local: .libs/libatalk.so + @$(top_srcdir)/abigen.sh .libs/libatalk.so > libatalk.abi.tmp + @if [ ! -f libatalk-$(NETATALK_VERSION).abi ] ; then \ + cp libatalk.abi.tmp libatalk-$(NETATALK_VERSION).abi ; \ + echo "**********************************************************************************************************" ; \ + echo " created ABI file libatalk-$(NETATALK_VERSION).abi" ; \ + echo " check https://sourceforge.net/apps/mediawiki/netatalk/index.php?title=Developer_Infos#ABI_checking" ; \ + echo "**********************************************************************************************************" ; \ + exit 1 ; \ + fi + @diff -u libatalk-$(NETATALK_VERSION).abi libatalk.abi.tmp || ( \ + echo '**********************************************************************************************************' && \ + echo '*** libatalk ABI changed ***' && \ + echo '*** check https://sourceforge.net/apps/mediawiki/netatalk/index.php?title=Developer_Infos#ABI_checking ***' && \ + echo '**********************************************************************************************************' && \ + exit 1 ) + +endif + +EXTRA_DIST = \ + libatalk-3.0beta1.abi \ + libatalk-3.0beta2.abi