linux-f2fs-devel.lists.sourceforge.net archive mirror
 help / color / mirror / Atom feed
From: Hans-Christoph Steiner <hans@eds.org>
To: 殷啟聰 <seamlikok@gmail.com>, "Jaegeuk Kim" <jaegeuk@kernel.org>
Cc: linux-f2fs-devel@lists.sourceforge.net
Subject: Re: [PATCH] f2fs-tools: add library version info
Date: Tue, 15 Dec 2015 16:28:38 +0100	[thread overview]
Message-ID: <567031A6.8020302@eds.org> (raw)
In-Reply-To: <CAKxyyfaR77Ej_=P7JWDZgx5HMc1K10JDn7Eqzrw7LBMgxnF0LA@mail.gmail.com>


It would be great to have the full versioned shared library, but if
it'll make things move faster, we can solve our Android SDK issues with
only a static library.  Then the shared library can come later.

.hc

殷啟聰:
> Hi Kim,
> 
> Maybe we can forget about the versioning for now. Libtool's versioning
> mechanism is a little bit complicated and adding the version to SONAME
> will likely cause big or small problems for so many downstream
> projects.
> 
> Why don't we simply add the libf2fs_format? That won't hurt anyway. :)
> 
> Regards,
> Kai-Chung Yan
> 
> 2015-12-10 3:12 GMT+08:00 Jaegeuk Kim <jaegeuk@kernel.org>:
>> This patch gives the version info for two libraries.
>>
>> mkfs/libf2fs_format.la
>> lib/libf2fs.la
>>
>> The versioning rule should be:
>>
>> 1. Start with version information of '0:0:0' for each libtool library.
>> 2. Update the version information only immediately before a public release of
>>    your software. More frequent updates are unnecessary, and only guarantee
>>    that the current interface number gets larger faster.
>> 2. If the library source code has changed at all since the last update, then
>>    increment revision (c:r:a) becomes (c:r+1:a).
>> 3. If any interfaces have been added, removed, or changed since the last update,
>>    increment current, and set revision to 0.
>> 4. If any interfaces have been added since the last public release, then
>>    increment age.
>> 5. If any interfaces have been removed or changed since the last public release,
>>    then set age to 0.
>>
>> quoted from:
>> http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info
>>
>> Cc: Hans-Christoph Steiner <hans@eds.org>
>> Cc: Kai-Chung Yan <seamlikok@gmail.com>
>> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
>> ---
>>  configure.ac     | 10 ++++++++++
>>  lib/Makefile.am  |  1 +
>>  mkfs/Makefile.am |  3 ++-
>>  3 files changed, 13 insertions(+), 1 deletion(-)
>>
>> diff --git a/configure.ac b/configure.ac
>> index b18ee4d..280a0d3 100644
>> --- a/configure.ac
>> +++ b/configure.ac
>> @@ -90,4 +90,14 @@ AC_CONFIG_FILES([
>>         tools/Makefile
>>  ])
>>
>> +# export library version info for mkfs/libf2fs_format_la
>> +AC_SUBST(FMT_CURRENT, 0)
>> +AC_SUBST(FMT_REVISION, 0)
>> +AC_SUBST(FMT_AGE, 0)
>> +
>> +# export library version info for lib/libf2fs_la
>> +AC_SUBST(LIBF2FS_CURRENT, 0)
>> +AC_SUBST(LIBF2FS_REVISION, 0)
>> +AC_SUBST(LIBF2FS_AGE, 0)
>> +
>>  AC_OUTPUT
>> diff --git a/lib/Makefile.am b/lib/Makefile.am
>> index a6b304c..37b8d57 100644
>> --- a/lib/Makefile.am
>> +++ b/lib/Makefile.am
>> @@ -5,3 +5,4 @@ lib_LTLIBRARIES = libf2fs.la
>>  libf2fs_la_SOURCES = libf2fs.c libf2fs_io.c
>>  libf2fs_la_CFLAGS = -Wall
>>  libf2fs_la_CPPFLAGS = -I$(top_srcdir)/include
>> +libf2fs_la_LDFLAGS = -version-info $(LIBF2FS_CURRENT):$(LIBF2FS_REVISION):$(LIBF2FS_AGE)
>> diff --git a/mkfs/Makefile.am b/mkfs/Makefile.am
>> index 8969a04..8b4c16c 100644
>> --- a/mkfs/Makefile.am
>> +++ b/mkfs/Makefile.am
>> @@ -10,4 +10,5 @@ lib_LTLIBRARIES = libf2fs_format.la
>>  libf2fs_format_la_SOURCES = f2fs_format_main.c f2fs_format.c f2fs_format_utils.c
>>  libf2fs_format_la_CFLAGS = -DWITH_BLKDISCARD
>>  libf2fs_format_la_CPPFLAGS = -I$(top_srcdir)/include
>> -libf2fs_format_la_LDFLAGS = -luuid -L$(top_srcdir)/lib -lf2fs
>> +libf2fs_format_la_LDFLAGS = -luuid -L$(top_srcdir)/lib -lf2fs \
>> +       -version-info $(FMT_CURRENT):$(FMT_REVISION):$(FMT_AGE)
>> --
>> 2.4.9 (Apple Git-60)
>>
> 
> 
> 

------------------------------------------------------------------------------
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

  reply	other threads:[~2015-12-15 15:47 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-09 19:12 [PATCH] f2fs-tools: add library version info Jaegeuk Kim
2015-12-15 12:19 ` 殷啟聰
2015-12-15 15:28   ` Hans-Christoph Steiner [this message]
2015-12-15 17:11     ` Jaegeuk Kim

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=567031A6.8020302@eds.org \
    --to=hans@eds.org \
    --cc=jaegeuk@kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=seamlikok@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).