*** ./configure.ORIG Thu Apr 7 20:30:21 2011 --- ./configure Thu Apr 7 20:32:30 2011 *************** *** 979,984 **** --- 979,985 ---- ' ARCH_LIST=' + AIX alpha arm avr32 *************** *** 1634,1640 **** nm_opts='-g' # machine ! arch_default=$(uname -m) cpu="generic" # OS --- 1635,1641 ---- nm_opts='-g' # machine ! arch_default=$(uname -s) cpu="generic" # OS *************** *** 1666,1672 **** # build settings SHFLAGS='-shared -Wl,-soname,$$(@F)' ! FFSERVERLDFLAGS=-Wl,-E LIBPREF="lib" LIBSUF=".a" FULLNAME='$(NAME)$(BUILDSUF)' --- 1667,1673 ---- # build settings SHFLAGS='-shared -Wl,-soname,$$(@F)' ! FFSERVERLDFLAGS= LIBPREF="lib" LIBSUF=".a" FULLNAME='$(NAME)$(BUILDSUF)' *************** *** 2503,2508 **** --- 2504,2511 ---- ;; gnu) ;; + aix) + ;; qnx) add_cppflags -D_QNX_SOURCE network_extralibs="-lsocket" *** 3223,3229 **** # add some linker flags check_ldflags -Wl,--warn-common check_ldflags -Wl,-rpath-link=libpostproc:libswresample:libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil - test_ldflags -Wl,-Bsymbolic && append SHFLAGS -Wl,-Bsymbolic echo "X{};" > $TMPV if test_ldflags -Wl,--version-script,$TMPV; then --- 3223,3228 ---- *** ./libavformat/udp.c.ORIG Thu Apr 7 20:32:44 2011 --- ./libavformat/udp.c Thu Apr 7 20:33:32 2011 *************** *** 43,48 **** --- 43,52 ---- #define IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP #endif + #if (defined(_AIX51) || defined(_AIX52) || defined(_AIX53)) && !(defined(_AIX61)) + #define ss_family __ss_family + #endif + typedef struct { int udp_fd; int ttl; *** ./libavcodec/dnxhdenc.c.ORIG Thu Apr 7 21:33:33 2011 --- ./libavcodec/dnxhdenc.c Thu Apr 7 21:33:47 2011 *************** *** 36,42 **** {"nitris_compat", "encode with Avid Nitris compatibility", offsetof(DNXHDEncContext, nitris_compat), FF_OPT_TYPE_INT, 0, 0, 1, VE}, {NULL} }; ! static const AVClass class = { "dnxhd", av_default_item_name, options, LIBAVUTIL_VERSION_INT }; int dct_quantize_c(MpegEncContext *s, DCTELEM *block, int n, int qscale, int *overflow); --- 36,42 ---- {"nitris_compat", "encode with Avid Nitris compatibility", offsetof(DNXHDEncContext, nitris_compat), FF_OPT_TYPE_INT, 0, 0, 1, VE}, {NULL} }; ! static const AVClass AIXclass = { "dnxhd", av_default_item_name, options, LIBAVUTIL_VERSION_INT }; int dct_quantize_c(MpegEncContext *s, DCTELEM *block, int n, int qscale, int *overflow); *************** *** 871,875 **** dnxhd_encode_end, .pix_fmts = (const enum PixelFormat[]){PIX_FMT_YUV422P, PIX_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("VC3/DNxHD"), ! .priv_class = &class, }; --- 871,875 ---- dnxhd_encode_end, .pix_fmts = (const enum PixelFormat[]){PIX_FMT_YUV422P, PIX_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("VC3/DNxHD"), ! .priv_class = &AIXclass, }; *** ./libavcodec/libvorbis.c.ORIG Thu Apr 7 21:35:15 2011 --- ./libavcodec/libvorbis.c Thu Apr 7 21:35:28 2011 *************** *** 59,65 **** {"iblock", "Sets the impulse block bias", offsetof(OggVorbisContext, iblock), AV_OPT_TYPE_DOUBLE, {.dbl = 0}, -15, 0, AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_ENCODING_PARAM}, {NULL} }; ! static const AVClass class = { "libvorbis", av_default_item_name, options, LIBAVUTIL_VERSION_INT }; static av_cold int oggvorbis_init_encoder(vorbis_info *vi, AVCodecContext *avccontext) { OggVorbisContext *context = avccontext->priv_data ; --- 59,65 ---- {"iblock", "Sets the impulse block bias", offsetof(OggVorbisContext, iblock), AV_OPT_TYPE_DOUBLE, {.dbl = 0}, -15, 0, AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_ENCODING_PARAM}, {NULL} }; ! static const AVClass AIXclass = { "libvorbis", av_default_item_name, options, LIBAVUTIL_VERSION_INT }; static av_cold int oggvorbis_init_encoder(vorbis_info *vi, AVCodecContext *avccontext) { OggVorbisContext *context = avccontext->priv_data ; *************** *** 284,288 **** .capabilities = CODEC_CAP_DELAY, .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("libvorbis Vorbis"), ! .priv_class = &class, }; --- 284,288 ---- .capabilities = CODEC_CAP_DELAY, .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("libvorbis Vorbis"), ! .priv_class = &AIXclass, }; *** ./libavcodec/pthread.c.ORIG Thu Apr 7 21:38:33 2011 --- ./libavcodec/pthread.c Thu Apr 7 21:39:28 2011 *************** *** 224,230 **** return avcodec_thread_execute(avctx, NULL, arg, ret, job_count, 0); } ! static int thread_init(AVCodecContext *avctx) { int i; ThreadContext *c; --- 224,230 ---- return avcodec_thread_execute(avctx, NULL, arg, ret, job_count, 0); } ! static int AIXthread_init(AVCodecContext *avctx) { int i; ThreadContext *c; *************** *** 893,899 **** validate_thread_parameters(avctx); if (avctx->active_thread_type&FF_THREAD_SLICE) ! return thread_init(avctx); else if (avctx->active_thread_type&FF_THREAD_FRAME) return frame_thread_init(avctx); } --- 893,899 ---- validate_thread_parameters(avctx); if (avctx->active_thread_type&FF_THREAD_SLICE) ! return AIXthread_init(avctx); else if (avctx->active_thread_type&FF_THREAD_FRAME) return frame_thread_init(avctx); } *** ./libavformat/rtsp.c.ORIG Thu Apr 7 21:26:39 2011 --- ./libavformat/rtsp.c Thu Apr 7 21:27:04 2011 *************** *** 54,59 **** --- 54,63 ---- #define SDP_MAX_SIZE 16384 #define RECVBUF_SIZE 10 * RTP_MAX_PACKET_LENGTH + #if (defined(_AIX51) || defined(_AIX52) || defined(_AIX53)) && !(defined(_AIX61)) + #define ss_family __ss_family + #endif + static void get_word_until_chars(char *buf, int buf_size, const char *sep, const char **pp) { *** ./libavformat/sapenc.c.ORIG Thu Apr 7 21:27:28 2011 --- ./libavformat/sapenc.c Thu Apr 7 21:27:51 2011 *************** *** 29,34 **** --- 29,38 ---- #include "os_support.h" #include "rtpenc_chain.h" + #if (defined(_AIX51) || defined(_AIX52) || defined(_AIX53)) && !(defined(_AIX61)) + #define ss_family __ss_family + #endif + struct SAPState { uint8_t *ann; int ann_size; *** ./libavutil/eval.c.ORIG Thu Apr 7 21:43:37 2011 --- ./libavutil/eval.c Thu Apr 7 21:44:22 2011 *************** *** 46,52 **** double var[VARS]; } Parser; ! static const AVClass class = { "Eval", av_default_item_name, NULL, LIBAVUTIL_VERSION_INT, offsetof(Parser,log_offset), offsetof(Parser,log_ctx) }; static const int8_t si_prefixes['z' - 'E' + 1] = { ['y'-'E']= -24, --- 46,52 ---- double var[VARS]; } Parser; ! static const AVClass AIXclass = { "Eval", av_default_item_name, NULL, LIBAVUTIL_VERSION_INT, offsetof(Parser,log_offset), offsetof(Parser,log_ctx) }; static const int8_t si_prefixes['z' - 'E' + 1] = { ['y'-'E']= -24, *************** *** 464,470 **** if (!isspace(*s++)) *wp++ = s[-1]; *wp++ = 0; ! p.class = &class; p.stack_index=100; p.s= w; p.const_names = const_names; --- 464,470 ---- if (!isspace(*s++)) *wp++ = s[-1]; *wp++ = 0; ! p.class = &AIXclass; p.stack_index=100; p.s= w; p.const_names = const_names; *** ./libavformat/spdifenc.c.ORIG Thu Sep 8 22:24:12 2011 --- ./libavformat/spdifenc.c Thu Sep 8 22:24:31 2011 *************** *** 93,99 **** { NULL }, }; ! static const AVClass class = { .class_name = "spdif", .item_name = av_default_item_name, .option = options, --- 93,99 ---- { NULL }, }; ! static const AVClass AIXclass = { .class_name = "spdif", .item_name = av_default_item_name, .option = options, *************** *** 552,556 **** spdif_write_packet, spdif_write_trailer, .flags = AVFMT_NOTIMESTAMPS, ! .priv_class = &class, }; --- 552,556 ---- spdif_write_packet, spdif_write_trailer, .flags = AVFMT_NOTIMESTAMPS, ! .priv_class = &AIXclass, }; *** ./libavcodec/libopencore-amr.c.ORIG Thu Sep 8 23:41:33 2011 --- ./libavcodec/libopencore-amr.c Thu Sep 8 23:42:10 2011 *************** *** 92,98 **** { NULL } }; ! static const AVClass class = { "libopencore_amrnb", av_default_item_name, options, LIBAVUTIL_VERSION_INT }; --- 92,98 ---- { NULL } }; ! static const AVClass AIXclass = { "libopencore_amrnb", av_default_item_name, options, LIBAVUTIL_VERSION_INT }; *************** *** 240,246 **** NULL, .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("OpenCORE Adaptive Multi-Rate (AMR) Narrow-Band"), ! .priv_class = &class, }; #endif --- 240,246 ---- NULL, .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("OpenCORE Adaptive Multi-Rate (AMR) Narrow-Band"), ! .priv_class = &AIXclass, }; #endif *** ./libavcodec/rawdec.c.ORIG Thu Sep 8 23:47:09 2011 --- ./libavcodec/rawdec.c Thu Sep 8 23:47:19 2011 *************** *** 45,51 **** {"top", "top field first", offsetof(RawVideoContext, tff), FF_OPT_TYPE_INT, {.dbl = -1}, -1, 1, AV_OPT_FLAG_DECODING_PARAM|AV_OPT_FLAG_VIDEO_PARAM}, {NULL} }; ! static const AVClass class = { "rawdec", NULL, options, LIBAVUTIL_VERSION_INT }; static const PixelFormatTag pix_fmt_bps_avi[] = { { PIX_FMT_MONOWHITE, 1 }, --- 45,51 ---- {"top", "top field first", offsetof(RawVideoContext, tff), FF_OPT_TYPE_INT, {.dbl = -1}, -1, 1, AV_OPT_FLAG_DECODING_PARAM|AV_OPT_FLAG_VIDEO_PARAM}, {NULL} }; ! static const AVClass AIXclass = { "rawdec", NULL, options, LIBAVUTIL_VERSION_INT }; static const PixelFormatTag pix_fmt_bps_avi[] = { { PIX_FMT_MONOWHITE, 1 }, *************** *** 231,235 **** raw_close_decoder, raw_decode, .long_name = NULL_IF_CONFIG_SMALL("raw video"), ! .priv_class= &class, }; --- 231,235 ---- raw_close_decoder, raw_decode, .long_name = NULL_IF_CONFIG_SMALL("raw video"), ! .priv_class= &AIXclass, }; *** ./libavcodec/libvpxenc.c.ORIG Sun Dec 11 14:27:17 2011 --- ./libavcodec/libvpxenc.c Sat Dec 17 08:43:53 2011 *************** *** 590,596 **** {NULL} }; ! static const AVClass class = { .class_name = "libvpx encoder", .item_name = av_default_item_name, .option = options, --- 590,596 ---- {NULL} }; ! static const AVClass AIXclass = { .class_name = "libvpx encoder", .item_name = av_default_item_name, .option = options, *************** *** 616,621 **** .capabilities = CODEC_CAP_DELAY, .pix_fmts = (const enum PixelFormat[]){PIX_FMT_YUV420P, PIX_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("libvpx VP8"), ! .priv_class = &class, .defaults = defaults, }; --- 616,621 ---- .capabilities = CODEC_CAP_DELAY, .pix_fmts = (const enum PixelFormat[]){PIX_FMT_YUV420P, PIX_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("libvpx VP8"), ! .priv_class = &AIXclass, .defaults = defaults, }; *** ./libavcodec/libx264.c.ORIG Sun Dec 11 14:27:17 2011 --- ./libavcodec/libx264.c Sat Dec 17 08:48:43 2011 *************** *** 31,37 **** #include typedef struct X264Context { ! AVClass *class; x264_param_t params; x264_t *enc; x264_picture_t pic; --- 31,37 ---- #include typedef struct X264Context { ! AVClass *AIXclass; x264_param_t params; x264_t *enc; x264_picture_t pic; *************** *** 648,654 **** { NULL }, }; ! static const AVClass class = { .class_name = "libx264", .item_name = av_default_item_name, .option = options, --- 648,654 ---- { NULL }, }; ! static const AVClass AIXclass = { .class_name = "libx264", .item_name = av_default_item_name, .option = options, *************** *** 698,704 **** .close = X264_close, .capabilities = CODEC_CAP_DELAY, .long_name = NULL_IF_CONFIG_SMALL("libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"), ! .priv_class = &class, .defaults = x264_defaults, .init_static_data = X264_init_static, }; --- 698,704 ---- .close = X264_close, .capabilities = CODEC_CAP_DELAY, .long_name = NULL_IF_CONFIG_SMALL("libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10"), ! .priv_class = &AIXclass, .defaults = x264_defaults, .init_static_data = X264_init_static, }; *** ./libavcodec/cljr.c.ORIG Sat Dec 17 16:24:08 2011 --- ./libavcodec/cljr.c Sat Dec 17 16:24:20 2011 *************** *** 178,184 **** { NULL }, }; ! static const AVClass class = { .class_name = "cljr encoder", .item_name = av_default_item_name, .option = options, --- 178,184 ---- { NULL }, }; ! static const AVClass AIXclass = { .class_name = "cljr encoder", .item_name = av_default_item_name, .option = options, *************** *** 195,200 **** .pix_fmts = (const enum PixelFormat[]) { PIX_FMT_YUV411P, PIX_FMT_NONE }, .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"), ! .priv_class = &class, }; #endif --- 195,200 ---- .pix_fmts = (const enum PixelFormat[]) { PIX_FMT_YUV411P, PIX_FMT_NONE }, .long_name = NULL_IF_CONFIG_SMALL("Cirrus Logic AccuPak"), ! .priv_class = &AIXclass, }; #endif *** ./libavcodec/g726.c.ORIG Sat Dec 17 16:27:22 2011 --- ./libavcodec/g726.c Sat Dec 17 16:27:42 2011 *************** *** 74,80 **** } G726Tables; typedef struct G726Context { ! AVClass *class; AVFrame frame; G726Tables tbls; /**< static tables needed for computation */ --- 74,80 ---- } G726Tables; typedef struct G726Context { ! AVClass *AIXclass; AVFrame frame; G726Tables tbls; /**< static tables needed for computation */ *************** *** 373,379 **** { NULL }, }; ! static const AVClass class = { .class_name = "g726", .item_name = av_default_item_name, .option = options, --- 373,379 ---- { NULL }, }; ! static const AVClass AIXclass = { .class_name = "g726", .item_name = av_default_item_name, .option = options, *************** *** 396,402 **** .capabilities = CODEC_CAP_SMALL_LAST_FRAME, .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"), ! .priv_class = &class, .defaults = defaults, }; #endif --- 396,402 ---- .capabilities = CODEC_CAP_SMALL_LAST_FRAME, .sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE}, .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"), ! .priv_class = &AIXclass, .defaults = defaults, }; #endif *** ./libavcodec/libspeexenc.c.ORIG Sat Dec 17 16:30:37 2011 --- ./libavcodec/libspeexenc.c Sat Dec 17 16:30:55 2011 *************** *** 73,79 **** #include "internal.h" typedef struct { ! AVClass *class; ///< AVClass for private options SpeexBits bits; ///< libspeex bitwriter context SpeexHeader header; ///< libspeex header struct void *enc_state; ///< libspeex encoder state --- 73,79 ---- #include "internal.h" typedef struct { ! AVClass *AIXclass; ///< AVClass for private options SpeexBits bits; ///< libspeex bitwriter context SpeexHeader header; ///< libspeex header struct void *enc_state; ///< libspeex encoder state *************** *** 295,301 **** { NULL }, }; ! static const AVClass class = { .class_name = "libspeex", .item_name = av_default_item_name, .option = options, --- 295,301 ---- { NULL }, }; ! static const AVClass AIXclass = { .class_name = "libspeex", .item_name = av_default_item_name, .option = options, *************** *** 319,324 **** .capabilities = CODEC_CAP_DELAY, .sample_fmts = (const enum SampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, .long_name = NULL_IF_CONFIG_SMALL("libspeex Speex"), ! .priv_class = &class, .defaults = defaults, }; --- 319,324 ---- .capabilities = CODEC_CAP_DELAY, .sample_fmts = (const enum SampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, .long_name = NULL_IF_CONFIG_SMALL("libspeex Speex"), ! .priv_class = &AIXclass, .defaults = defaults, }; *** ./libavformat/dvenc.c.ORIG Sat Dec 17 16:19:01 2011 --- ./libavformat/dvenc.c Sat Dec 17 16:19:19 2011 *************** *** 410,416 **** return 0; } ! static const AVClass class = { .class_name = "dv", .item_name = av_default_item_name, .version = LIBAVUTIL_VERSION_INT, --- 410,416 ---- return 0; } ! static const AVClass AIXclass = { .class_name = "dv", .item_name = av_default_item_name, .version = LIBAVUTIL_VERSION_INT, *************** *** 430,434 **** .write_header = dv_write_header, .write_packet = dv_write_packet, .write_trailer = dv_write_trailer, ! .priv_class = &class, }; --- 430,434 ---- .write_header = dv_write_header, .write_packet = dv_write_packet, .write_trailer = dv_write_trailer, ! .priv_class = &AIXclass, }; *** ./libavformat/gsmdec.c.ORIG Sat Dec 17 16:22:07 2011 --- ./libavformat/gsmdec.c Sat Dec 17 16:19:59 2011 *************** *** 29,35 **** #define GSM_SAMPLE_RATE 8000 typedef struct { ! AVClass *class; int sample_rate; } GSMDemuxerContext; --- 29,35 ---- #define GSM_SAMPLE_RATE 8000 typedef struct { ! AVClass *AIXclass; int sample_rate; } GSMDemuxerContext; *************** *** 113,119 **** { NULL }, }; ! static const AVClass class = { .class_name = "gsm demuxer", .item_name = av_default_item_name, .option = options, --- 113,119 ---- { NULL }, }; ! static const AVClass AIXclass = { .class_name = "gsm demuxer", .item_name = av_default_item_name, .option = options, *************** *** 129,133 **** .read_seek2 = gsm_read_seek2, .extensions = "gsm", .value = CODEC_ID_GSM, ! .priv_class = &class, }; --- 129,133 ---- .read_seek2 = gsm_read_seek2, .extensions = "gsm", .value = CODEC_ID_GSM, ! .priv_class = &AIXclass, };