[FFmpeg-devel] [PATCH v3 3/3] avutil/avstring: replace with system interface if dirname and basename functions are detected
Limin Wang
lance.lmwang at gmail.com
Fri Oct 25 04:11:54 EEST 2019
On Wed, Oct 23, 2019 at 06:07:24PM +0200, Paul B Mahol wrote:
> Why?
>
Sorry, I haven't get your question, you mean why to use system
standard c lib API?
> On 10/23/19, lance.lmwang at gmail.com <lance.lmwang at gmail.com> wrote:
> > From: Limin Wang <lance.lmwang at gmail.com>
> >
> > Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> > ---
> > configure | 4 ++++
> > libavutil/avstring.c | 13 ++++++++++++-
> > 2 files changed, 16 insertions(+), 1 deletion(-)
> >
> > diff --git a/configure b/configure
> > index 8413826..5296a4c 100755
> > --- a/configure
> > +++ b/configure
> > @@ -2188,6 +2188,8 @@ SYSTEM_FUNCS="
> > clock_gettime
> > closesocket
> > CommandLineToArgvW
> > + dirname
> > + basename
> > fcntl
> > getaddrinfo
> > gethrtime
> > @@ -5980,6 +5982,8 @@ check_func access
> > check_func_headers stdlib.h arc4random
> > check_lib clock_gettime time.h clock_gettime || check_lib clock_gettime
> > time.h clock_gettime -lrt
> > check_func fcntl
> > +check_func_headers libgen.h dirname
> > +check_func_headers libgen.h basename
> > check_func fork
> > check_func gethrtime
> > check_func getopt
> > diff --git a/libavutil/avstring.c b/libavutil/avstring.c
> > index 76a13ba..66654fb 100644
> > --- a/libavutil/avstring.c
> > +++ b/libavutil/avstring.c
> > @@ -19,12 +19,15 @@
> > * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
> > USA
> > */
> >
> > +#include "config.h"
> > #include <stdarg.h>
> > #include <stdint.h>
> > #include <stdio.h>
> > #include <string.h>
> > +#if defined(HAVE_DIRNAME) || defined(HAVE_BASENAME)
> > +#include <libgen.h>
> > +#endif
> >
> > -#include "config.h"
> > #include "common.h"
> > #include "mem.h"
> > #include "avassert.h"
> > @@ -257,6 +260,9 @@ char *av_strireplace(const char *str, const char *from,
> > const char *to)
> >
> > const char *av_basename(const char *path)
> > {
> > +#if HAVE_BASENAME
> > + return basename((char*)path);
> > +#else
> > char *p;
> >
> > if (!path || *path == '\0')
> > @@ -274,10 +280,14 @@ const char *av_basename(const char *path)
> > return path;
> >
> > return p + 1;
> > +#endif
> > }
> >
> > const char *av_dirname(char *path)
> > {
> > +#if HAVE_DIRNAME
> > + return dirname(path);
> > +#else
> > char *p = path ? strrchr(path, '/') : NULL;
> >
> > #if HAVE_DOS_PATHS
> > @@ -295,6 +305,7 @@ const char *av_dirname(char *path)
> > *p = '\0';
> >
> > return path;
> > +#endif
> > }
> >
> > char *av_append_path_component(const char *path, const char *component)
> > --
> > 2.6.4
> >
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel at ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
More information about the ffmpeg-devel
mailing list