Commit 9f240566 authored by Diego Biurrun's avatar Diego Biurrun

Collapse tableprint.c into tableprint.h.

tableprint.c serves little purpose on its own and removing it allows building
the table generator programs with the normal HOSTPROGS Makefile rules.
parent 272874c9
...@@ -666,7 +666,9 @@ TESTPROGS = cabac dct eval fft fft-fixed h264 iirfilter rangecoder snow ...@@ -666,7 +666,9 @@ TESTPROGS = cabac dct eval fft fft-fixed h264 iirfilter rangecoder snow
TESTPROGS-$(HAVE_MMX) += motion TESTPROGS-$(HAVE_MMX) += motion
TESTOBJS = dctref.o TESTOBJS = dctref.o
HOSTPROGS = costablegen HOSTPROGS = aac_tablegen aacps_tablegen cbrt_tablegen costablegen \
dv_tablegen motionpixels_tablegen mpegaudio_tablegen \
pcm_tablegen qdm2_tablegen sinewin_tablegen
DIRS = alpha arm bfin mlib ppc ps2 sh4 sparc x86 DIRS = alpha arm bfin mlib ppc ps2 sh4 sparc x86
...@@ -688,9 +690,6 @@ else ...@@ -688,9 +690,6 @@ else
$(SUBDIR)%_tablegen$(HOSTEXESUF): HOSTCFLAGS += -DCONFIG_SMALL=0 $(SUBDIR)%_tablegen$(HOSTEXESUF): HOSTCFLAGS += -DCONFIG_SMALL=0
endif endif
$(SUBDIR)%_tablegen$(HOSTEXESUF): $(SUBDIR)%_tablegen.c $(SUBDIR)%_tablegen.h $(SUBDIR)tableprint.c
$(HOSTCC) $(HOSTCFLAGS) $(HOSTLDFLAGS) -o $@ $(filter %.c,$^) $(HOSTLIBS)
GEN_HEADERS = cbrt_tables.h aacps_tables.h aac_tables.h dv_tables.h \ GEN_HEADERS = cbrt_tables.h aacps_tables.h aac_tables.h dv_tables.h \
sinewin_tables.h mpegaudio_tables.h motionpixels_tables.h \ sinewin_tables.h mpegaudio_tables.h motionpixels_tables.h \
pcm_tables.h qdm2_tables.h pcm_tables.h qdm2_tables.h
......
/*
* Generate a file for hardcoded tables
*
* Copyright (c) 2009 Reimar Döffinger <Reimar.Doeffinger@gmx.de>
*
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* Libav 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with Libav; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <stdio.h>
#include <inttypes.h>
#include "tableprint.h"
WRITE_1D_FUNC(int8_t, "%3"PRIi8, 15)
WRITE_1D_FUNC(uint8_t, "0x%02"PRIx8, 15)
WRITE_1D_FUNC(uint16_t, "0x%08"PRIx16, 7)
WRITE_1D_FUNC(uint32_t, "0x%08"PRIx32, 7)
WRITE_1D_FUNC(float, "%.18e", 3)
WRITE_2D_FUNC(int8_t)
WRITE_2D_FUNC(uint8_t)
WRITE_2D_FUNC(uint32_t)
WRITE_2D_FUNC(float)
void write_fileheader(void) {
printf("/* This file was automatically generated. */\n");
printf("#include <stdint.h>\n");
}
...@@ -23,8 +23,9 @@ ...@@ -23,8 +23,9 @@
#ifndef AVCODEC_TABLEPRINT_H #ifndef AVCODEC_TABLEPRINT_H
#define AVCODEC_TABLEPRINT_H #define AVCODEC_TABLEPRINT_H
#include <stdint.h> #include <inttypes.h>
#include <stdio.h> #include <stdio.h>
#include "libavutil/common.h" #include "libavutil/common.h"
#define WRITE_1D_FUNC_ARGV(type, linebrk, fmtstr, ...)\ #define WRITE_1D_FUNC_ARGV(type, linebrk, fmtstr, ...)\
...@@ -70,9 +71,6 @@ void write_uint32_t_2d_array(const void *, int, int); ...@@ -70,9 +71,6 @@ void write_uint32_t_2d_array(const void *, int, int);
void write_float_2d_array (const void *, int, int); void write_float_2d_array (const void *, int, int);
/** \} */ // end of printfuncs group /** \} */ // end of printfuncs group
/** Write a standard file header */
void write_fileheader(void);
#define WRITE_ARRAY(prefix, type, name) \ #define WRITE_ARRAY(prefix, type, name) \
do { \ do { \
const size_t array_size = FF_ARRAY_ELEMS(name); \ const size_t array_size = FF_ARRAY_ELEMS(name); \
...@@ -92,4 +90,22 @@ void write_fileheader(void); ...@@ -92,4 +90,22 @@ void write_fileheader(void);
printf("};\n"); \ printf("};\n"); \
} while(0) } while(0)
WRITE_1D_FUNC(int8_t, "%3"PRIi8, 15)
WRITE_1D_FUNC(uint8_t, "0x%02"PRIx8, 15)
WRITE_1D_FUNC(uint16_t, "0x%08"PRIx16, 7)
WRITE_1D_FUNC(uint32_t, "0x%08"PRIx32, 7)
WRITE_1D_FUNC(float, "%.18e", 3)
WRITE_2D_FUNC(int8_t)
WRITE_2D_FUNC(uint8_t)
WRITE_2D_FUNC(uint32_t)
WRITE_2D_FUNC(float)
static inline void write_fileheader(void)
{
printf("/* This file was automatically generated. */\n");
printf("#include <stdint.h>\n");
}
#endif /* AVCODEC_TABLEPRINT_H */ #endif /* AVCODEC_TABLEPRINT_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment