commit: 8d80956d533a47332b0851cc7f133266900ab72e Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Sun Jun 15 19:13:42 2025 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Sun Jun 15 19:13:42 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d80956d
media-video/mplayer: Remove old Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> media-video/mplayer/Manifest | 3 - .../files/mplayer-1.5_p20230618-gcc13.patch | 11 - ...layer-1.5_p20231206-incompatible-pointers.patch | 287 --------- media-video/mplayer/mplayer-1.5_p20230215.ebuild | 636 -------------------- media-video/mplayer/mplayer-1.5_p20230618.ebuild | 650 -------------------- media-video/mplayer/mplayer-1.5_p20231206.ebuild | 650 -------------------- media-video/mplayer/mplayer-1.5_p20241125.ebuild | 654 --------------------- 7 files changed, 2891 deletions(-) diff --git a/media-video/mplayer/Manifest b/media-video/mplayer/Manifest index b6e71fffef4e..982305d31334 100644 --- a/media-video/mplayer/Manifest +++ b/media-video/mplayer/Manifest @@ -1,7 +1,4 @@ DIST font-arial-cp1250.tar.bz2 249705 BLAKE2B eb4366a110d917dc975b8add168ab43b1e8a0db7342647f69f5421fc1170719015c97ffa770e89892cbb4cee8e5b2fb74a4772c8f6cbef9606ee12c3746d78c9 SHA512 4f77ff5ceb8ec6e5d9f8f34d8950a6a6276d1fd5a947772fcbdb6554988b1ea665c12b82f45164f91fb7bd08000cb4afc26fa35beb4c760464160e22b9b8c340 DIST font-arial-iso-8859-1.tar.bz2 234242 BLAKE2B 0671854e1a257d27b502affb59de681942a93990d3ac2575bbf1a6dd9eef026969f2f9ce4e9c11a68ea3d8aed48063f826a1e153f7468437a39791672c92a5d0 SHA512 a1d03b6f09c48f48b7733f3bc0402ceab239a9abf88b860d852ea9fe69b4da690208a79d6f29d30204f5b37becf10672e8e8c0bfef201846d80ec54df617d029 DIST font-arial-iso-8859-2.tar.bz2 222208 BLAKE2B 94b1a04672bf9b4b20a0e6981591e761f751bd637deddcb801855296c525bf3b5e8feb1cb11cef282c0269f2c963ded22846089076e7e6763f258b8a932af454 SHA512 5671e628303fd816f64a51ad10e2f4dd9c3dc1b34c379a2ecf489b83931db7af668aaa4e00e96a00cacd63ed98daeae6b6a4d5925edfb06fc98d3a923f70257d -DIST mplayer-1.5_p20230215.tar.xz 15454028 BLAKE2B 08012f9b955921d832ab268a6e52e22e018b669787ff5e1c1ac734bd85083138551ad1065d5e4f5f9c977b804f8135ee89d2fd0590fb7228d4916b458cc58efa SHA512 f93d222817ff59ac7708956d6e8d5e9ee2084b4e724f66ea9fe4ffd477b864c2d0546d8df97511d499495ee446239645216a1e027d70eed434a3c64331f5ac73 -DIST mplayer-1.5_p20230618.tar.xz 15101476 BLAKE2B 74f1d2d579c83330d8bf1e1ce2a89592f62142f361ff0e4107710c80de4351a5807e344869cb55ff5b5856efaedb6cfe242483f8e7f97521b805f84ca23e3818 SHA512 874e76b3edfccb7475349d954ed49860f92a5e99f0374084f5da53af35326365bb064c460fb6527d2fb6d8ae20d9e059ba197f45d4de42bc7a78992b5191a7cb -DIST mplayer-1.5_p20231206.tar.xz 15212032 BLAKE2B c4658a0070296a9e24bb8388787a2ef322fefad4f4ea095bbf3f95b20f2e32b0423814ae311e43c9a6ef20afe0970540abd5d6d0ae0ebd59df74a8beb7abe3df SHA512 480502c735fb8d24ea1761a2b3f7daf1872df268f44791c7141f5b444b583beb0e4ecebe94e04129d27aae27656baddfb2da50406a431f1df39c589baac69432 DIST mplayer-1.5_p20241125.tar.xz 15807772 BLAKE2B ce448b344f6ad9d5cb6216725f02c2560ff9282d46deeb40837fc1bfad02425ead86a9fbe717acd060b7428a2b84b75557b2f662ff95ece104b2302c926fc1db SHA512 7cefb4ba6b64eef42fd6192e7d84d38fd85580d7535f7630cc9e7de060cb0c08c85ffea121f6099410d6882a2265af169fb9424ee9ec81209319250a93ee81c1 diff --git a/media-video/mplayer/files/mplayer-1.5_p20230618-gcc13.patch b/media-video/mplayer/files/mplayer-1.5_p20230618-gcc13.patch deleted file mode 100644 index 0aab0273d424..000000000000 --- a/media-video/mplayer/files/mplayer-1.5_p20230618-gcc13.patch +++ /dev/null @@ -1,11 +0,0 @@ -https://bugs.gentoo.org/918113 ---- a/libmpcodecs/mp_image.c -+++ b/libmpcodecs/mp_image.c -@@ -30,6 +30,7 @@ - #include "libmpcodecs/mp_image.h" - #include "libvo/fastmemcpy.h" - #include "libavutil/mem.h" -+#include <limits.h> - #include "mp_msg.h" - - void mp_image_alloc_planes(mp_image_t *mpi) { diff --git a/media-video/mplayer/files/mplayer-1.5_p20231206-incompatible-pointers.patch b/media-video/mplayer/files/mplayer-1.5_p20231206-incompatible-pointers.patch deleted file mode 100644 index 2fe47a941685..000000000000 --- a/media-video/mplayer/files/mplayer-1.5_p20231206-incompatible-pointers.patch +++ /dev/null @@ -1,287 +0,0 @@ ---- a/libaf/af_lavcresample.c -+++ b/libaf/af_lavcresample.c -@@ -156,7 +156,7 @@ static af_data_t* play(struct af_instance_s* af, af_data_t* data) - - memcpy(s->in[0], in, in_len); - -- ret = swr_convert(s->swrctx, &s->tmp[0], out_len/chans/2, &s->in[0], in_len/chans/2); -+ ret = swr_convert(s->swrctx, &s->tmp[0], out_len/chans/2, (const uint8_t **)&s->in[0], in_len/chans/2); - if (ret < 0) return NULL; - out_len= ret*chans*2; - ---- a/libmpcodecs/ad_spdif.c -+++ b/libmpcodecs/ad_spdif.c -@@ -131,7 +131,7 @@ static int init(sh_audio_t *sh) - // FORCE USE DTS-HD - if (lavf_ctx->streams[0]->codecpar->codec_id == AV_CODEC_ID_DTS) - av_dict_set(&opts, "dtshd_rate", "768000" /* 192000*4 */, 0); -- if ((res = avformat_write_header(lavf_ctx, opts)) < 0) { -+ if ((res = avformat_write_header(lavf_ctx, (AVDictionary **)opts)) < 0) { - av_dict_free(&opts); - if (res == AVERROR_PATCHWELCOME) - mp_msg(MSGT_DECAUDIO,MSGL_INFO, ---- a/libmpcodecs/vd_ffmpeg.c -+++ b/libmpcodecs/vd_ffmpeg.c -@@ -739,7 +739,7 @@ static int get_buffer(AVCodecContext *avctx, AVFrame *pic, int isreference){ - if (ctx->use_vdpau) { - VdpVideoSurface surface = (VdpVideoSurface)mpi->priv; - avctx->draw_horiz_band= NULL; -- mpi->planes[3] = surface; -+ mpi->planes[3] = (unsigned char *)surface; - } - #endif - #if CONFIG_XVMC ---- a/libmpcodecs/vf_pp.c -+++ b/libmpcodecs/vf_pp.c -@@ -142,7 +142,7 @@ static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts, double - - if(vf->priv->pp || !(mpi->flags&MP_IMGFLAG_DIRECT)){ - // do the postprocessing! (or copy if no DR) -- pp_postprocess(mpi->planes ,mpi->stride, -+ pp_postprocess((const uint8_t **)mpi->planes ,mpi->stride, - vf->dmpi->planes,vf->dmpi->stride, - (mpi->w+7)&(~7),mpi->h, - mpi->qscale, mpi->qstride, ---- a/libmpcodecs/vf_scale.c -+++ b/libmpcodecs/vf_scale.c -@@ -439,14 +439,14 @@ static void scale(struct SwsContext *sws1, struct SwsContext *sws2, uint8_t *src - int src_stride2[MP_MAX_PLANES]={2*src_stride[0], 2*src_stride[1], 2*src_stride[2], 2*src_stride[3]}; - int dst_stride2[MP_MAX_PLANES]={2*dst_stride[0], 2*dst_stride[1], 2*dst_stride[2], 2*dst_stride[3]}; - -- sws_scale(sws1, src2, src_stride2, y>>1, h>>1, dst2, dst_stride2); -+ sws_scale(sws1, (const uint8_t * const*)src2, src_stride2, y>>1, h>>1, dst2, dst_stride2); - for(i=0; i<MP_MAX_PLANES; i++){ - src2[i] += src_stride[i]; - dst2[i] += dst_stride[i]; - } -- sws_scale(sws2, src2, src_stride2, y>>1, h>>1, dst2, dst_stride2); -+ sws_scale(sws2, (const uint8_t * const*)src2, src_stride2, y>>1, h>>1, dst2, dst_stride2); - }else{ -- sws_scale(sws1, src2, src_stride, y, h, dst, dst_stride); -+ sws_scale(sws1, (const uint8_t * const*)src2, src_stride, y, h, dst, dst_stride); - } - } - ---- a/libmpcodecs/vf_screenshot.c -+++ b/libmpcodecs/vf_screenshot.c -@@ -60,7 +60,7 @@ static void draw_slice(struct vf_instance *vf, unsigned char** src, - int* stride, int w,int h, int x, int y) - { - if (vf->priv->store_slices) { -- sws_scale(vf->priv->ctx, src, stride, y, h, vf->priv->pic->data, vf->priv->pic->linesize); -+ sws_scale(vf->priv->ctx, (const uint8_t * const*)src, stride, y, h, vf->priv->pic->data, vf->priv->pic->linesize); - } - vf_next_draw_slice(vf,src,stride,w,h,x,y); - } -@@ -158,7 +158,7 @@ static void scale_image(struct vf_priv_s* priv, mp_image_t *mpi) - if (!priv->pic->data[0]) - priv->pic->data[0] = av_malloc(priv->pic->linesize[0]*priv->dh); - -- sws_scale(priv->ctx, mpi->planes, mpi->stride, 0, mpi->height, priv->pic->data, priv->pic->linesize); -+ sws_scale(priv->ctx, (const uint8_t * const*)mpi->planes, mpi->stride, 0, mpi->height, priv->pic->data, priv->pic->linesize); - } - - static void start_slice(struct vf_instance *vf, mp_image_t *mpi) ---- a/libmpdemux/demux_film.c -+++ b/libmpdemux/demux_film.c -@@ -157,7 +157,7 @@ static int demux_film_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - free(buf); - } - else {/* for 16bit */ -- unsigned short* tmp = dp->buffer; -+ unsigned short* tmp = (short unsigned int *)dp->buffer; - unsigned short* buf = malloc(film_chunk.chunk_size); - for(i = 0; i < film_chunk.chunk_size/4; i++) { - buf[i*2] = tmp[i]; ---- a/libmpdemux/demux_lavf.c -+++ b/libmpdemux/demux_lavf.c -@@ -378,7 +378,7 @@ static void handle_stream(demuxer_t *demuxer, AVFormatContext *avfc, int i) { - } - case AVMEDIA_TYPE_VIDEO:{ - AVDictionaryEntry *rot = av_dict_get(st->metadata, "rotate", NULL, 0); -- const int32_t *disp_matrix = av_stream_get_side_data(st, AV_PKT_DATA_DISPLAYMATRIX, NULL); -+ const int32_t *disp_matrix = (const int32_t *)av_stream_get_side_data(st, AV_PKT_DATA_DISPLAYMATRIX, NULL); - sh_video_t* sh_video; - BITMAPINFOHEADER *bih; - sh_video=new_sh_video_vid(demuxer, i, priv->video_streams); ---- a/libmpdemux/muxer_avi.c -+++ b/libmpdemux/muxer_avi.c -@@ -142,8 +142,8 @@ static muxer_stream_t* avifile_new_stream(muxer_t *muxer,int type){ - static void write_avi_chunk(stream_t *stream,unsigned int id,int len,void* data){ - int le_len = le2me_32(len); - int le_id = le2me_32(id); -- stream_write_buffer(stream, &le_id, 4); -- stream_write_buffer(stream, &le_len, 4); -+ stream_write_buffer(stream, (unsigned char *)&le_id, 4); -+ stream_write_buffer(stream, (unsigned char *)&le_len, 4); - - if(len>0){ - if(data){ -@@ -176,9 +176,9 @@ static void write_avi_list(stream_t *stream, unsigned int id, int len) - list_id = le2me_32(list_id); - le_len = le2me_32(len); - le_id = le2me_32(id); -- stream_write_buffer(stream, &list_id, 4); -- stream_write_buffer(stream, &le_len, 4); -- stream_write_buffer(stream, &le_id, 4); -+ stream_write_buffer(stream, (unsigned char *)&list_id, 4); -+ stream_write_buffer(stream, (unsigned char *)&le_len, 4); -+ stream_write_buffer(stream, (unsigned char *)&le_id, 4); - } - - static void avifile_odml_new_riff(muxer_t *muxer) -@@ -199,7 +199,7 @@ static void avifile_odml_new_riff(muxer_t *muxer) - riff[0]=le2me_32(mmioFOURCC('R','I','F','F')); - riff[1]=0; - riff[2]=le2me_32(mmioFOURCC('A','V','I','X')); -- stream_write_buffer(muxer->stream, riff, 12); -+ stream_write_buffer(muxer->stream, (unsigned char *)riff, 12); - - write_avi_list(muxer->stream,listtypeAVIMOVIE,0); - -@@ -251,12 +251,12 @@ static void avifile_write_header(muxer_t *muxer){ - movilen = le2me_32(rifflen - 12); - rifflen = le2me_32(rifflen); - stream_seek(muxer->stream, vsi->riffofs[i]+4); -- stream_write_buffer(muxer->stream,&rifflen,4); -+ stream_write_buffer(muxer->stream,(unsigned char *)&rifflen,4); - - /* fixup movi length */ - if (i > 0) { - stream_seek(muxer->stream, vsi->riffofs[i]+16); -- stream_write_buffer(muxer->stream,&movilen,4); -+ stream_write_buffer(muxer->stream,(unsigned char *)&movilen,4); - } - } - -@@ -269,7 +269,7 @@ static void avifile_write_header(muxer_t *muxer){ - riff[0]=le2me_32(riff[0]); - riff[1]=le2me_32(riff[1]); - riff[2]=le2me_32(riff[2]); -- stream_write_buffer(muxer->stream,&riff,12); -+ stream_write_buffer(muxer->stream,(unsigned char *)&riff,12); - } - - // update AVI header: -@@ -406,7 +406,7 @@ static void avifile_write_header(muxer_t *muxer){ - idxhdr[6] = 0; - idxhdr[7] = 0; - -- stream_write_buffer(muxer->stream,idxhdr,sizeof(idxhdr)); -+ stream_write_buffer(muxer->stream,(unsigned char *)idxhdr,sizeof(idxhdr)); - for (j=0; j<n; j++) { - struct avi_odmlsuperidx_entry *entry = &si->superidx[j]; - unsigned int data[4]; -@@ -414,7 +414,7 @@ static void avifile_write_header(muxer_t *muxer){ - data[1] = le2me_32(entry->ofs >> 32); - data[2] = le2me_32(entry->len); - data[3] = le2me_32(entry->duration); -- stream_write_buffer(muxer->stream,data,sizeof(data)); -+ stream_write_buffer(muxer->stream,(unsigned char *)data,sizeof(data)); - } - } - } -@@ -642,13 +642,13 @@ static void avifile_odml_write_index(muxer_t *muxer){ - si->superidx[j].ofs = stream_tell(muxer->stream); - si->superidx[j].duration = duration; - -- stream_write_buffer(muxer->stream, idxhdr,sizeof(idxhdr)); -+ stream_write_buffer(muxer->stream, (unsigned char *)idxhdr,sizeof(idxhdr)); - for (k=0; k<entries_per_subidx && idxpos<si->idxpos; k++) { - unsigned int entry[2]; - entry[0] = le2me_32(si->idx[idxpos].ofs - start); - entry[1] = le2me_32(si->idx[idxpos].len | si->idx[idxpos].flags); - idxpos++; -- stream_write_buffer(muxer->stream, entry, sizeof(entry)); -+ stream_write_buffer(muxer->stream, (unsigned char *)entry, sizeof(entry)); - } - } - } ---- a/libvo/gl_common.c -+++ b/libvo/gl_common.c -@@ -2239,7 +2239,7 @@ static XVisualInfo *getWindowVisualInfo(Window win) { - XVisualInfo vinfo_template; - int tmp; - if (!XGetWindowAttributes(mDisplay, win, &xw_attr)) -- return DefaultVisual(mDisplay, 0); -+ return (XVisualInfo *)DefaultVisual(mDisplay, 0); - vinfo_template.visualid = XVisualIDFromVisual(xw_attr.visual); - return XGetVisualInfo(mDisplay, VisualIDMask, &vinfo_template, &tmp); - } ---- a/libvo/vo_matrixview.c -+++ b/libvo/vo_matrixview.c -@@ -170,7 +170,7 @@ static void flip_page(void) - - static int draw_slice(uint8_t *src[], int stride[], int w, int h, int x, int y) - { -- sws_scale(sws, src, stride, y, h, map_image, map_stride); -+ sws_scale(sws, (const uint8_t * const*)src, stride, y, h, map_image, map_stride); - return 0; - } - ---- a/libvo/vo_x11.c -+++ b/libvo/vo_x11.c -@@ -492,7 +492,7 @@ static int draw_slice(uint8_t * src[], int stride[], int w, int h, - dst[0] += dstStride[0] * (image_height - 1); - dstStride[0] = -dstStride[0]; - } -- sws_scale(swsContext, src, stride, y, h, dst, dstStride); -+ sws_scale(swsContext, (const uint8_t * const*)src, stride, y, h, dst, dstStride); - return 0; - } - ---- a/loader/qtx/qtxsdk/components.h -+++ b/loader/qtx/qtxsdk/components.h -@@ -780,7 +780,7 @@ static inline void dump_CodecDecompressParams(void* xxx){ - printf("dstrect: %d;%d - %d;%d\n",cd->dstRect.top,cd->dstRect.left,cd->dstRect.bottom,cd->dstRect.right); - printf("wantedDestinationPixelTypes=%p\n",cd->wantedDestinationPixelTypes); - if(cd->wantedDestinationPixelTypes){ -- unsigned int* p=cd->wantedDestinationPixelTypes; -+ unsigned int* p=(unsigned int *)cd->wantedDestinationPixelTypes; - while(p[0]){ - printf(" 0x%08X %p\n",p[0],&p[0]); - ++p; ---- a/mp_msg.c -+++ b/mp_msg.c -@@ -70,7 +70,7 @@ const char* filename_recode(const char* filename) - filename_len = strlen(filename); - max_path = MSGSIZE_MAX - 4; - precoded = recoded_filename; -- if (iconv(inv_msgiconv, &filename, &filename_len, -+ if (iconv(inv_msgiconv, (char ** restrict)&filename, &filename_len, - &precoded, &max_path) == (size_t)(-1) && errno == E2BIG) { - precoded[0] = precoded[1] = precoded[2] = '.'; - precoded += 3; ---- a/mplayer.c -+++ b/mplayer.c -@@ -3536,7 +3536,7 @@ goto_enable_cache: - break; - if ((mpctx->demuxer->file_format == DEMUXER_TYPE_AVI || mpctx->demuxer->file_format == DEMUXER_TYPE_ASF || mpctx->demuxer->file_format == DEMUXER_TYPE_MOV) - && stream_dump_type == 2) -- stream_write_buffer(os, &in_size, 4); -+ stream_write_buffer(os, (unsigned char *)&in_size, 4); - if (in_size > 0) { - stream_write_buffer(os, start, in_size); - stream_dump_progress(in_size, mpctx->stream); ---- a/sub/spudec.c -+++ b/sub/spudec.c -@@ -899,7 +899,7 @@ static void sws_spu_image(unsigned char *d1, unsigned char *d2, int dw, int dh, - ctx=sws_getContext(sw, sh, AV_PIX_FMT_GRAY8, dw, dh, AV_PIX_FMT_GRAY8, SWS_GAUSS, &filter, NULL, NULL); - sws_scale(ctx,&s1,&ss,0,sh,&d1,&ds); - for (i=ss*sh-1; i>=0; i--) s2[i] = -s2[i]; -- sws_scale(ctx,&s2,&ss,0,sh,&d2,&ds); -+ sws_scale(ctx,(const uint8_t * const*)&s2,&ss,0,sh,&d2,&ds); - for (i=ds*dh-1; i>=0; i--) d2[i] = -d2[i]; - sws_freeContext(ctx); - } ---- a/sub/sub.c -+++ b/sub/sub.c -@@ -727,7 +727,7 @@ static inline void vo_update_text_sub(mp_osd_obj_t *obj, int dxs, int dys) - // reading the subtitle words from vo_sub->text[] - while (*t) { - if (sub_utf8) -- c = utf8_get_char(&t); -+ c = utf8_get_char((const char **)&t); - else if ((c = *t++) >= 0x80 && sub_unicode) - c = (c<<8) + *t++; - if (k==MAX_UCS){ diff --git a/media-video/mplayer/mplayer-1.5_p20230215.ebuild b/media-video/mplayer/mplayer-1.5_p20230215.ebuild deleted file mode 100644 index 73222bdf8321..000000000000 --- a/media-video/mplayer/mplayer-1.5_p20230215.ebuild +++ /dev/null @@ -1,636 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit edo toolchain-funcs flag-o-matic - -if [[ ${PV} == *9999* ]]; then - EGIT_REPO_URI="https://git.ffmpeg.org/ffmpeg.git" - ESVN_REPO_URI="svn://svn.mplayerhq.hu/mplayer/trunk" - RELEASE_URI="" - - inherit subversion git-r3 -elif [[ "${PV%_rc*}" == "${PV}" && "${PV%_pre*}" == "${PV}" && "${PV%_p*}" == "${PV}" ]]; then - MY_P="MPlayer-${PV}" - S="${WORKDIR}/${MY_P}" - RELEASE_URI="mirror://mplayer/releases/${MY_P}.tar.xz" -else - # If necessary, don't be afraid to make a snapshot. - # http://www.mplayerhq.hu/design7/dload.html says: - # "We recommend to always use the latest SVN to get the all the new - # features and bugfixes, especially if the release date above looks old." - RELEASE_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" -fi - -FONT_URI=" - mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 -" - -DESCRIPTION="Media Player for Linux" -HOMEPAGE="http://www.mplayerhq.hu/" -SRC_URI=" - ${RELEASE_URI} - !truetype? ( ${FONT_URI} ) -" - -IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cpu_flags_x86_fma4" -IUSE+=" cpu_flags_x86_mmx cpu_flags_x86_mmxext" -IUSE+=" cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1" -IUSE+=" cpu_flags_x86_sse4_2 cpu_flags_x86_xop" -IUSE+=" cpu_flags_x86_3dnow cpu_flags_x86_3dnowext" - -IUSE+=" cpu_flags_ppc_altivec" - -IUSE+=" a52 aalib +alsa aqua bidi bl bluray" -IUSE+=" bs2b cddb +cdio cdparanoia cpudetection debug dga doc dts dv dvb +dvd +dvdnav +enca +encode faac faad fbcon" -IUSE+=" ftp ggi gsm +iconv ipv6 jack joystick jpeg ladspa +libass libcaca libmpeg2 lirc live lzo mad md5sum" -IUSE+=" mng mp3 nas +network openal opengl +osdmenu oss png pnm pulseaudio pvr" -IUSE+=" radio rar rtc rtmp samba selinux +shm sdl speex" -IUSE+=" tga theora tremor +truetype toolame twolame +unicode v4l vcd vdpau vidix" -IUSE+=" vorbis +X x264 xinerama +xscreensaver +xv xvid yuv4mpeg zoran" - -VIDEO_CARDS="mga" -for x in ${VIDEO_CARDS}; do - IUSE+=" video_cards_${x}" -done - -FONT_RDEPS=" - media-libs/fontconfig - >=media-libs/freetype-2.2.1:2 - virtual/ttf-fonts -" -X_RDEPS=" - x11-libs/libXext - x11-libs/libXxf86vm -" -# - RAR: although -gpl version is nice, it can't do most functions normal rars can -# nemesi? ( net-libs/libnemesi ) -# - mplayer relies on private APIs in giflib that have been removed: -# https://sourceforge.net/p/giflib/bugs/132/ -RDEPEND=" - app-arch/bzip2 - >=media-video/ffmpeg-4.0:=[vdpau?] - sys-libs/ncurses:= - sys-libs/zlib - a52? ( media-libs/a52dec ) - aalib? ( media-libs/aalib ) - alsa? ( media-libs/alsa-lib ) - bidi? ( dev-libs/fribidi ) - bluray? ( >=media-libs/libbluray-0.2.1:= ) - bs2b? ( media-libs/libbs2b ) - cdio? ( - dev-libs/libcdio:= - dev-libs/libcdio-paranoia - ) - cdparanoia? ( !cdio? ( media-sound/cdparanoia ) ) - dga? ( x11-libs/libXxf86dga ) - dts? ( media-libs/libdca ) - dv? ( media-libs/libdv ) - dvd? ( >=media-libs/libdvdread-4.1.3:= ) - dvdnav? ( >=media-libs/libdvdnav-4.1.3:= ) - encode? ( - !twolame? ( toolame? ( media-sound/toolame ) ) - twolame? ( media-sound/twolame ) - faac? ( media-libs/faac ) - mp3? ( media-sound/lame ) - x264? ( >=media-libs/x264-0.0.20100423:= ) - xvid? ( media-libs/xvid ) - ) - enca? ( app-i18n/enca ) - faad? ( media-libs/faad2 ) - ggi? ( media-libs/libggi media-libs/libggiwmh ) - gsm? ( media-sound/gsm ) - iconv? ( virtual/libiconv ) - jack? ( virtual/jack ) - jpeg? ( media-libs/libjpeg-turbo:= ) - ladspa? ( media-libs/ladspa-sdk ) - libass? ( >=media-libs/libass-0.9.10:= ) - libcaca? ( media-libs/libcaca ) - libmpeg2? ( media-libs/libmpeg2 ) - lirc? ( app-misc/lirc ) - live? ( media-plugins/live ) - lzo? ( >=dev-libs/lzo-2 ) - mad? ( media-libs/libmad ) - mng? ( media-libs/libmng:= ) - mp3? ( media-sound/mpg123 ) - nas? ( media-libs/nas ) - openal? ( media-libs/openal ) - opengl? ( virtual/opengl ) - png? ( media-libs/libpng:= ) - pnm? ( media-libs/netpbm ) - pulseaudio? ( media-sound/pulseaudio ) - rar? ( - || ( - app-arch/unrar - app-arch/rar - ) - ) - rtmp? ( media-video/rtmpdump ) - samba? ( net-fs/samba ) - sdl? ( media-libs/libsdl ) - speex? ( media-libs/speex ) - theora? ( media-libs/libtheora[encode?] ) - tremor? ( media-libs/tremor ) - truetype? ( ${FONT_RDEPS} ) - vdpau? ( x11-libs/libvdpau ) - vorbis? ( !tremor? ( media-libs/libvorbis ) ) - X? ( ${X_RDEPS} ) - xinerama? ( x11-libs/libXinerama ) - xscreensaver? ( x11-libs/libXScrnSaver ) - xv? ( x11-libs/libXv ) -" -DEPEND=" - ${RDEPEND} - dga? ( x11-base/xorg-proto ) - dvb? ( sys-kernel/linux-headers ) - X? ( x11-base/xorg-proto ) - xinerama? ( x11-base/xorg-proto ) - xscreensaver? ( x11-base/xorg-proto ) -" -ASM_DEP="dev-lang/yasm" -BDEPEND=" - virtual/pkgconfig - amd64? ( ${ASM_DEP} ) - doc? ( - app-text/docbook-xml-dtd - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - ) - x86? ( ${ASM_DEP} ) -" -RDEPEND+="selinux? ( sec-policy/selinux-mplayer )" - -LICENSE="GPL-2" -SLOT="0" -if [[ ${PV} != *9999* ]]; then - KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86" -fi - -# faac codecs are nonfree -# libcdio support: prefer libcdio over cdparanoia and don't check for cddb w/cdio -# dvd navigation requires dvd read support -# ass and freetype font require iconv and ass requires freetype fonts -# unicode transformations are usefull only with iconv -# radio requires oss or alsa backend -REQUIRED_USE=" - dga? ( X ) - dvdnav? ( dvd ) - enca? ( iconv ) - ggi? ( X ) - libass? ( truetype ) - opengl? ( X ) - osdmenu? ( X ) - truetype? ( iconv ) - vdpau? ( X ) - vidix? ( X ) - xinerama? ( X ) - xscreensaver? ( X ) - xv? ( X )" -RESTRICT="faac? ( bindist )" - -pkg_setup() { - if [[ ${PV} == *9999* ]]; then - elog - elog "This is a live ebuild which installs the latest from upstream's" - elog "subversion repository, and is unsupported by Gentoo." - elog "Everything but bugs in the ebuild itself will be ignored." - elog - fi - - if use cpudetection; then - ewarn - ewarn "You've enabled the cpudetection flag. This feature is" - ewarn "included mainly for people who want to use the same" - ewarn "binary on another system with a different CPU architecture." - ewarn "MPlayer will already detect your CPU settings by default at" - ewarn "buildtime; this flag is used for runtime detection." - ewarn "You won't need this turned on if you are only building" - ewarn "mplayer for this system. Also, if your compile fails, try" - ewarn "disabling this use flag." - fi -} - -src_unpack() { - if [[ ${PV} == *9999* ]]; then - subversion_src_unpack - - cd "${WORKDIR}" || die - rm -rf "${WORKDIR}/${P}/ffmpeg/" || die - ( EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/ffmpeg/" git-r3_src_unpack ) - else - unpack ${A} - fi - - if [[ ${PV} == *9999* || "${PV%_rc*}" == "${PV}" ]]; then - cd "${S}" || die - cp "${FILESDIR}/dump_ffmpeg.sh" . || die - chmod +x dump_ffmpeg.sh || die - ./dump_ffmpeg.sh - fi - - if ! use truetype; then - unpack font-arial-iso-8859-1.tar.bz2 \ - font-arial-iso-8859-2.tar.bz2 \ - font-arial-cp1250.tar.bz2 - fi -} - -src_prepare() { - default - - local svf=snapshot_version - if [[ ${PV} == *9999* ]]; then - # Set SVN version manually - subversion_wc_info - printf "${ESVN_WC_REVISION}" > ${svf} || die - fi - - if [[ ! -f VERSION ]]; then - [[ -f "${svf}" ]] || die "Missing ${svf}. Did you generate your snapshot with prepare_mplayer.sh?" - - local sv=$(<${svf}) - printf "SVN-r${sv} (Gentoo)" > VERSION || die - fi - - # Fix path to bash executable in configure scripts - sed -i -e "1c\#!${EPREFIX}/bin/bash" configure version.sh || die - - # Use sane default for >=virtual/udev-197 - sed -i -e '/default_dvd_device/s:/dev/dvd:/dev/cdrom:' configure || die -} - -src_configure() { - # undefined reference to `sse_int32_map_factor' etc - # https://bugs.gentoo.org/650458 - # https://trac.mplayerhq.hu/ticket/2408 - use libass && use cpu_flags_x86_sse4_1 && filter-lto - - local myconf=() - local uses i - - # Set LINGUAS - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/da/dk}" - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/zh/zh_CN}" #482968 - - # mplayer ebuild uses "use foo || --disable-foo" to forcibly disable - # compilation in almost every situation. The reason for this is - # because if --enable is used, it will force the build of that option, - # regardless of whether the dependency is available or not. - - ##################### - # Optional features # - ##################### - # Disable svga since we don't want it - # Disable arts since we don't have kde3 - # Always disable internal ass - # Disable opus and ilbc since it only controls support in internal - # ffmpeg which we do not use - myconf+=( - --disable-arts - --disable-ass-internal - --disable-directfb - --disable-kai - --disable-libilbc - --disable-libnut - --disable-libopus - --disable-svga --disable-svgalib_helper - --disable-xvmc - $(use_enable network networking) - $(use_enable joystick) - ) - - uses="bl bluray enca ftp rtc vcd" # nemesi <- not working with in-tree ebuild - myconf+=( --disable-nemesi ) # nemesi automagic disable - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use bidi || myconf+=( --disable-fribidi ) - use ipv6 || myconf+=( --disable-inet6 ) - use libass || myconf+=( --disable-ass ) - use rar || myconf+=( --disable-unrarexec ) - use samba || myconf+=( --disable-smb ) - use lirc || myconf+=( --disable-lirc --disable-lircc --disable-apple-ir ) - - # libcdio support: prefer libcdio over cdparanoia - # don't check for cddb w/cdio - if use cdio; then - myconf+=( --disable-cdparanoia ) - else - myconf+=( --disable-libcdio ) - use cdparanoia || myconf+=( --disable-cdparanoia ) - use cddb || myconf+=( --disable-cddb ) - fi - - ################################ - # DVD read, navigation support # - ################################ - # - # dvdread - accessing a DVD - # dvdnav - navigation of menus - use dvd || myconf+=( --disable-dvdread ) - use dvdnav || myconf+=( --disable-dvdnav ) - - ############# - # Subtitles # - ############# - # - # SRT/ASS/SSA (subtitles) requires freetype support - # freetype support requires iconv - # iconv optionally can use unicode - use truetype || myconf+=( --disable-freetype ) - use iconv || myconf+=( --disable-iconv --charset=noconv ) - use iconv && use unicode && myconf+=( --charset=UTF-8 ) - - ##################################### - # DVB / Video4Linux / Radio support # - ##################################### - myconf+=( --disable-tv-bsdbt848 ) - # gone since linux-headers-2.6.38 - myconf+=( --disable-tv-v4l1 ) - if { use dvb || use v4l || use pvr || use radio; }; then - use dvb || myconf+=( --disable-dvb ) - use pvr || myconf+=( --disable-pvr ) - use v4l || myconf+=( --disable-tv-v4l2 ) - if use radio && { use dvb || use v4l; }; then - myconf+=( - --enable-radio - $(use_enable encode radio-capture) - ) - else - myconf+=( - --disable-radio-v4l2 - --disable-radio-bsdbt848 - ) - fi - else - myconf+=( - --disable-tv - --disable-tv-v4l2 - --disable-radio - --disable-radio-v4l2 - --disable-radio-bsdbt848 - --disable-dvb - --disable-v4l2 - --disable-pvr - ) - fi - - ########## - # Codecs # - ########## - myconf+=( --disable-musepack ) # Use internal musepack codecs for SV7 and SV8 support - myconf+=( --disable-libmpeg2-internal ) # always use system media-libs/libmpeg2 - myconf+=( --disable-gif ) # relies on to-be-removed giflib internals https://sourceforge.net/p/giflib/bugs/132/ - use dts || myconf+=( --disable-libdca ) - if ! use mp3; then - myconf+=( - --disable-mp3lame - --disable-mpg123 - ) - fi - uses="a52 bs2b dv gsm lzo rtmp vorbis" - for i in ${uses}; do - use ${i} || myconf+=( --disable-lib${i} ) - done - - uses="faad jpeg libmpeg2 live mad mng png pnm speex tga theora tremor" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - # Pulls an outdated libopenjpeg, ffmpeg provides better support for it - myconf+=( --disable-libopenjpeg ) - - # Encoding - uses="faac x264 xvid toolame twolame" - if use encode; then - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - else - myconf+=( --disable-mencoder ) - for i in ${uses}; do - myconf+=( --disable-${i} ) - use ${i} && elog "Useflag \"${i}\" will only be useful for encoding, i.e., with \"encode\" useflag enabled." - done - fi - - ################# - # Binary codecs # - ################# - myconf+=( --disable-qtx --disable-real --disable-win32dll ) - - ################ - # Video Output # - ################ - uses="md5sum sdl yuv4mpeg" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use aalib || myconf+=( --disable-aa ) - use fbcon || myconf+=( --disable-fbdev ) - use libcaca || myconf+=( --disable-caca ) - use zoran || myconf+=( --disable-zr ) - - if ! use kernel_linux || ! use video_cards_mga; then - myconf+=( --disable-mga --disable-xmga ) - fi - - myconf+=( - --disable-3dfx - --disable-tdfxvid - --disable-tdfxfb - ) - - # sun card, disable by default, see bug #258729 - myconf+=( --disable-xvr100 ) - - ################ - # Audio Output # - ################ - myconf+=( --disable-esd ) - uses="alsa jack ladspa nas openal" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use pulseaudio || myconf+=( --disable-pulse ) - if ! use radio; then - use oss || myconf+=( --disable-ossaudio ) - fi - - #################### - # Advanced Options # - #################### - # Platform specific flags, hardcoded on amd64 (see below) - use cpudetection && myconf+=( --enable-runtime-cpudetection ) - - uses="3dnow 3dnowext avx avx2 fma3 fma4 mmx mmxext sse sse2 sse3 ssse3 xop" - for i in ${uses}; do - myconf+=( $(use_enable cpu_flags_x86_${i} ${i}) ) - done - myconf+=( $(use_enable cpu_flags_x86_sse4_1 sse4) ) - myconf+=( $(use_enable cpu_flags_x86_sse4_2 sse42) ) - - myconf+=( - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable shm) - ) - - use debug && myconf+=( --enable-debug=3 ) - - if use x86 && gcc-specs-pie; then - filter-flags -fPIC -fPIE - append-ldflags -nopie - fi - - ########################### - # X enabled configuration # - ########################### - myconf+=( --disable-gui ) - myconf+=( --disable-vesa ) - uses="ggi vdpau xinerama xv" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use dga || myconf+=( --disable-dga1 --disable-dga2 ) - use opengl || myconf+=( --disable-gl ) - use osdmenu && myconf+=( --enable-menu ) - use vidix || myconf+=( --disable-vidix --disable-vidix-pcidb ) - use xscreensaver || myconf+=( --disable-xss ) - use X || myconf+=( --disable-x11 ) - - ############################ - # OSX (aqua) configuration # - ############################ - if use aqua; then - myconf+=( - --enable-macosx-finder - --enable-macosx-bundle - ) - fi - - # Note: --enable-gnutls only makes sense with --enable-ffmpeg_a - edo ./configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - --prefix="${EPREFIX}/usr" \ - --bindir="${EPREFIX}/usr/bin" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --confdir="${EPREFIX}/etc/mplayer" \ - --datadir="${EPREFIX}/usr/share/mplayer${namesuf}" \ - --mandir="${EPREFIX}/usr/share/man" \ - --disable-ffmpeg_a \ - --disable-gnutls \ - "${myconf[@]}" -} - -src_compile() { - default - - # Build only user-requested docs if they're available. - if use doc ; then - # Select available languages from ${LINGUAS} - local ALLOWED_LINGUAS="cs de en es fr hu it pl ru zh_CN" - local BUILT_DOCS=() - local i - - for i in ${LINGUAS} ; do - has ${i} ${ALLOWED_LINGUAS} && BUILT_DOCS+=( ${i} ) - done - - if [[ -z ${BUILT_DOCS[@]} ]]; then - emake -j1 html-chunked - else - for i in ${BUILT_DOCS[@]}; do - emake -j1 html-chunked-${i} - done - fi - fi -} - -src_install() { - local i - - emake \ - DESTDIR="${D}" \ - INSTALLSTRIP="" \ - install - - dodoc AUTHORS Changelog Copyright README etc/codecs.conf - - docinto tech/ - dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist} - docinto TOOLS/ - dodoc -r TOOLS/* - docinto tech/mirrors/ - dodoc DOCS/tech/mirrors/* - - if use doc; then - docinto html/ - dodoc -r "${S}"/DOCS/HTML/* - fi - - if ! use truetype; then - dodir /usr/share/mplayer/fonts - - # Do this generic, as the mplayer people like to change the structure - # of their zips ... - local i - for i in $(find "${WORKDIR}/" -type d -name 'font-arial-*'); do - cp -pPR "${i}" "${ED}/usr/share/mplayer/fonts" - done - - # Fix the font symlink ... - rm -rf "${ED}/usr/share/mplayer/font" - dosym fonts/font-arial-14-iso-8859-1 /usr/share/mplayer/font - fi - - insinto /etc/mplayer - newins "${S}/etc/example.conf" mplayer.conf - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - # Config options can be section specific, global - # options should go in the default section - [default] - _EOF_ - - doins "${S}/etc/input.conf" - if use osdmenu; then - doins "${S}/etc/menu.conf" - fi - - if use truetype; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - fontconfig=1 - subfont-osd-scale=4 - subfont-text-scale=3 - _EOF_ - fi - - # bug 256203 - if use rar; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - unrarexec=${EPREFIX}/usr/bin/unrar - _EOF_ - fi - - dosym -r /etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf - newbin "${S}/TOOLS/midentify.sh" midentify -} - -pkg_preinst() { - [[ -d ${EROOT}/usr/share/mplayer/Skin/default ]] && \ - rm -rf "${EROOT}/usr/share/mplayer/Skin/default" -} - -pkg_postrm() { - # Cleanup stale symlinks - [[ -L "${EROOT}/usr/share/mplayer/font" && - ! -e "${EROOT}/usr/share/mplayer/font" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/font" - - [[ -L "${EROOT}/usr/share/mplayer/subfont.ttf" && - ! -e "${EROOT}/usr/share/mplayer/subfont.ttf" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/subfont.ttf" -} diff --git a/media-video/mplayer/mplayer-1.5_p20230618.ebuild b/media-video/mplayer/mplayer-1.5_p20230618.ebuild deleted file mode 100644 index 7d5a5877ad06..000000000000 --- a/media-video/mplayer/mplayer-1.5_p20230618.ebuild +++ /dev/null @@ -1,650 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit edo toolchain-funcs flag-o-matic - -if [[ ${PV} == *9999* ]]; then - EGIT_REPO_URI="https://git.ffmpeg.org/ffmpeg.git" - ESVN_REPO_URI="svn://svn.mplayerhq.hu/mplayer/trunk" - RELEASE_URI="" - - inherit subversion git-r3 -elif [[ "${PV%_rc*}" == "${PV}" && "${PV%_pre*}" == "${PV}" && "${PV%_p*}" == "${PV}" ]]; then - MY_P="MPlayer-${PV}" - S="${WORKDIR}/${MY_P}" - RELEASE_URI="mirror://mplayer/releases/${MY_P}.tar.xz" -else - # If necessary, don't be afraid to make a snapshot. - # http://www.mplayerhq.hu/design7/dload.html says: - # "We recommend to always use the latest SVN to get the all the new - # features and bugfixes, especially if the release date above looks old." - RELEASE_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" -fi - -FONT_URI=" - mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 -" - -DESCRIPTION="Media Player for Linux" -HOMEPAGE="http://www.mplayerhq.hu/" -SRC_URI=" - ${RELEASE_URI} - !truetype? ( ${FONT_URI} ) -" - -IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2" -IUSE+=" cpu_flags_x86_fma3 cpu_flags_x86_fma4" -IUSE+=" cpu_flags_x86_mmx cpu_flags_x86_mmxext" -IUSE+=" cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1" -IUSE+=" cpu_flags_x86_sse4_2 cpu_flags_x86_xop" -IUSE+=" cpu_flags_x86_3dnow cpu_flags_x86_3dnowext" - -IUSE+=" cpu_flags_arm_thumb cpu_flags_arm_neon cpu_flags_arm_vfp cpu_flags_arm_vfpv3" -IUSE+=" cpu_flags_arm_iwmmxt" -IUSE+=" cpu_flags_ppc_altivec" - -IUSE+=" a52 aalib +alsa aqua bidi bl bluray" -IUSE+=" bs2b cddb +cdio cdparanoia cpudetection debug dga doc dts dv dvb +dvd +dvdnav +enca +encode faac faad fbcon" -IUSE+=" ftp ggi gsm +iconv ipv6 jack joystick jpeg ladspa +libass libcaca libmpeg2 lirc live lzo mad md5sum" -IUSE+=" mng mp3 nas +network openal opengl +osdmenu oss png pnm pulseaudio pvr" -IUSE+=" radio rar rtc rtmp samba selinux +shm sdl speex" -IUSE+=" tga theora tremor +truetype toolame twolame +unicode v4l vcd vdpau vidix" -IUSE+=" vorbis +X x264 xinerama +xscreensaver +xv xvid yuv4mpeg zoran" - -VIDEO_CARDS="mga" -for x in ${VIDEO_CARDS}; do - IUSE+=" video_cards_${x}" -done - -FONT_RDEPS=" - media-libs/fontconfig - >=media-libs/freetype-2.2.1:2 - virtual/ttf-fonts -" -X_RDEPS=" - x11-libs/libXext - x11-libs/libXxf86vm -" -# - RAR: although -gpl version is nice, it can't do most functions normal rars can -# nemesi? ( net-libs/libnemesi ) -# - mplayer relies on private APIs in giflib that have been removed: -# https://sourceforge.net/p/giflib/bugs/132/ -RDEPEND=" - app-arch/bzip2 - >=media-video/ffmpeg-4.0:=[vdpau?] - sys-libs/ncurses:= - sys-libs/zlib - a52? ( media-libs/a52dec ) - aalib? ( media-libs/aalib ) - alsa? ( media-libs/alsa-lib ) - bidi? ( dev-libs/fribidi ) - bluray? ( >=media-libs/libbluray-0.2.1:= ) - bs2b? ( media-libs/libbs2b ) - cdio? ( - dev-libs/libcdio:= - dev-libs/libcdio-paranoia - ) - cdparanoia? ( !cdio? ( media-sound/cdparanoia ) ) - dga? ( x11-libs/libXxf86dga ) - dts? ( media-libs/libdca ) - dv? ( media-libs/libdv ) - dvd? ( >=media-libs/libdvdread-4.1.3:= ) - dvdnav? ( >=media-libs/libdvdnav-4.1.3:= ) - encode? ( - !twolame? ( toolame? ( media-sound/toolame ) ) - twolame? ( media-sound/twolame ) - faac? ( media-libs/faac ) - mp3? ( media-sound/lame ) - x264? ( >=media-libs/x264-0.0.20100423:= ) - xvid? ( media-libs/xvid ) - ) - enca? ( app-i18n/enca ) - faad? ( media-libs/faad2 ) - ggi? ( media-libs/libggi media-libs/libggiwmh ) - gsm? ( media-sound/gsm ) - iconv? ( virtual/libiconv ) - jack? ( virtual/jack ) - jpeg? ( media-libs/libjpeg-turbo:= ) - ladspa? ( media-libs/ladspa-sdk ) - libass? ( >=media-libs/libass-0.9.10:= ) - libcaca? ( media-libs/libcaca ) - libmpeg2? ( media-libs/libmpeg2 ) - lirc? ( app-misc/lirc ) - live? ( media-plugins/live ) - lzo? ( >=dev-libs/lzo-2 ) - mad? ( media-libs/libmad ) - mng? ( media-libs/libmng:= ) - mp3? ( media-sound/mpg123 ) - nas? ( media-libs/nas ) - openal? ( media-libs/openal ) - opengl? ( virtual/opengl ) - png? ( media-libs/libpng:= ) - pnm? ( media-libs/netpbm ) - pulseaudio? ( media-sound/pulseaudio ) - rar? ( - || ( - app-arch/unrar - app-arch/rar - ) - ) - rtmp? ( media-video/rtmpdump ) - samba? ( net-fs/samba ) - sdl? ( media-libs/libsdl ) - speex? ( media-libs/speex ) - theora? ( media-libs/libtheora[encode?] ) - tremor? ( media-libs/tremor ) - truetype? ( ${FONT_RDEPS} ) - vdpau? ( x11-libs/libvdpau ) - vorbis? ( !tremor? ( media-libs/libvorbis ) ) - X? ( ${X_RDEPS} ) - xinerama? ( x11-libs/libXinerama ) - xscreensaver? ( x11-libs/libXScrnSaver ) - xv? ( x11-libs/libXv ) -" -DEPEND=" - ${RDEPEND} - dga? ( x11-base/xorg-proto ) - dvb? ( sys-kernel/linux-headers ) - X? ( x11-base/xorg-proto ) - xinerama? ( x11-base/xorg-proto ) - xscreensaver? ( x11-base/xorg-proto ) -" -ASM_DEP="dev-lang/yasm" -BDEPEND=" - virtual/pkgconfig - amd64? ( ${ASM_DEP} ) - doc? ( - app-text/docbook-xml-dtd - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - ) - x86? ( ${ASM_DEP} ) -" -RDEPEND+="selinux? ( sec-policy/selinux-mplayer )" - -LICENSE="GPL-2" -SLOT="0" -if [[ ${PV} != *9999* ]]; then - KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86" -fi - -# faac codecs are nonfree -# libcdio support: prefer libcdio over cdparanoia and don't check for cddb w/cdio -# dvd navigation requires dvd read support -# ass and freetype font require iconv and ass requires freetype fonts -# unicode transformations are usefull only with iconv -# radio requires oss or alsa backend -REQUIRED_USE=" - dga? ( X ) - dvdnav? ( dvd ) - enca? ( iconv ) - ggi? ( X ) - libass? ( truetype ) - opengl? ( X ) - osdmenu? ( X ) - truetype? ( iconv ) - vdpau? ( X ) - vidix? ( X ) - xinerama? ( X ) - xscreensaver? ( X ) - xv? ( X )" -RESTRICT="faac? ( bindist )" - -PATCHES=( - "${FILESDIR}"/${P}-gcc13.patch -) - -pkg_setup() { - if [[ ${PV} == *9999* ]]; then - elog - elog "This is a live ebuild which installs the latest from upstream's" - elog "subversion repository, and is unsupported by Gentoo." - elog "Everything but bugs in the ebuild itself will be ignored." - elog - fi - - if use cpudetection; then - ewarn - ewarn "You've enabled the cpudetection flag. This feature is" - ewarn "included mainly for people who want to use the same" - ewarn "binary on another system with a different CPU architecture." - ewarn "MPlayer will already detect your CPU settings by default at" - ewarn "buildtime; this flag is used for runtime detection." - ewarn "You won't need this turned on if you are only building" - ewarn "mplayer for this system. Also, if your compile fails, try" - ewarn "disabling this use flag." - fi -} - -src_unpack() { - if [[ ${PV} == *9999* ]]; then - subversion_src_unpack - - cd "${WORKDIR}" || die - rm -rf "${WORKDIR}/${P}/ffmpeg/" || die - ( EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/ffmpeg/" git-r3_src_unpack ) - else - unpack ${A} - fi - - if [[ ${PV} == *9999* || "${PV%_rc*}" == "${PV}" ]]; then - cd "${S}" || die - cp "${FILESDIR}/dump_ffmpeg.sh" . || die - chmod +x dump_ffmpeg.sh || die - ./dump_ffmpeg.sh - fi - - if ! use truetype; then - unpack font-arial-iso-8859-1.tar.bz2 \ - font-arial-iso-8859-2.tar.bz2 \ - font-arial-cp1250.tar.bz2 - fi -} - -src_prepare() { - default - - local svf=snapshot_version - if [[ ${PV} == *9999* ]]; then - # Set SVN version manually - subversion_wc_info - printf "${ESVN_WC_REVISION}" > ${svf} || die - fi - - if [[ ! -f VERSION ]]; then - [[ -f "${svf}" ]] || die "Missing ${svf}. Did you generate your snapshot with prepare_mplayer.sh?" - - local sv=$(<${svf}) - printf "SVN-r${sv} (Gentoo)" > VERSION || die - fi - - # Fix path to bash executable in configure scripts - sed -i -e "1c\#!${EPREFIX}/bin/bash" configure version.sh || die - - # Use sane default for >=virtual/udev-197 - sed -i -e '/default_dvd_device/s:/dev/dvd:/dev/cdrom:' configure || die -} - -src_configure() { - # undefined reference to `sse_int32_map_factor' etc - # https://bugs.gentoo.org/650458 - # https://trac.mplayerhq.hu/ticket/2408 - use libass && use cpu_flags_x86_sse4_1 && filter-lto - - local myconf=() - local uses i - - # Set LINGUAS - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/da/dk}" - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/zh/zh_CN}" # bug #482968 - - # mplayer ebuild uses "use foo || --disable-foo" to forcibly disable - # compilation in almost every situation. The reason for this is - # because if --enable is used, it will force the build of that option, - # regardless of whether the dependency is available or not. - - ##################### - # Optional features # - ##################### - # Disable svga since we don't want it - # Disable arts since we don't have kde3 - # Always disable internal ass - # Disable opus and ilbc since it only controls support in internal - # ffmpeg which we do not use - myconf+=( - --disable-arts - --disable-ass-internal - --disable-directfb - --disable-kai - --disable-libilbc - --disable-libnut - --disable-libopus - --disable-svga --disable-svgalib_helper - --disable-xvmc - $(use_enable network networking) - $(use_enable joystick) - ) - - uses="bl bluray enca ftp rtc vcd" # nemesi <- not working with in-tree ebuild - myconf+=( --disable-nemesi ) # nemesi automagic disable - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use bidi || myconf+=( --disable-fribidi ) - use ipv6 || myconf+=( --disable-inet6 ) - use libass || myconf+=( --disable-ass ) - use rar || myconf+=( --disable-unrarexec ) - use samba || myconf+=( --disable-smb ) - use lirc || myconf+=( --disable-lirc --disable-lircc --disable-apple-ir ) - - # libcdio support: prefer libcdio over cdparanoia - # don't check for cddb w/cdio - if use cdio; then - myconf+=( --disable-cdparanoia ) - else - myconf+=( --disable-libcdio ) - use cdparanoia || myconf+=( --disable-cdparanoia ) - use cddb || myconf+=( --disable-cddb ) - fi - - ################################ - # DVD read, navigation support # - ################################ - # - # dvdread - accessing a DVD - # dvdnav - navigation of menus - use dvd || myconf+=( --disable-dvdread ) - use dvdnav || myconf+=( --disable-dvdnav ) - - ############# - # Subtitles # - ############# - # - # SRT/ASS/SSA (subtitles) requires freetype support - # freetype support requires iconv - # iconv optionally can use unicode - use truetype || myconf+=( --disable-freetype ) - use iconv || myconf+=( --disable-iconv --charset=noconv ) - use iconv && use unicode && myconf+=( --charset=UTF-8 ) - - ##################################### - # DVB / Video4Linux / Radio support # - ##################################### - myconf+=( --disable-tv-bsdbt848 ) - # gone since linux-headers-2.6.38 - myconf+=( --disable-tv-v4l1 ) - if { use dvb || use v4l || use pvr || use radio; }; then - use dvb || myconf+=( --disable-dvb ) - use pvr || myconf+=( --disable-pvr ) - use v4l || myconf+=( --disable-tv-v4l2 ) - if use radio && { use dvb || use v4l; }; then - myconf+=( - --enable-radio - $(use_enable encode radio-capture) - ) - else - myconf+=( - --disable-radio-v4l2 - --disable-radio-bsdbt848 - ) - fi - else - myconf+=( - --disable-tv - --disable-tv-v4l2 - --disable-radio - --disable-radio-v4l2 - --disable-radio-bsdbt848 - --disable-dvb - --disable-v4l2 - --disable-pvr - ) - fi - - ########## - # Codecs # - ########## - myconf+=( --disable-musepack ) # Use internal musepack codecs for SV7 and SV8 support - myconf+=( --disable-libmpeg2-internal ) # always use system media-libs/libmpeg2 - myconf+=( --disable-gif ) # relies on to-be-removed giflib internals https://sourceforge.net/p/giflib/bugs/132/ - use dts || myconf+=( --disable-libdca ) - if ! use mp3; then - myconf+=( - --disable-mp3lame - --disable-mpg123 - ) - fi - uses="a52 bs2b dv gsm lzo rtmp vorbis" - for i in ${uses}; do - use ${i} || myconf+=( --disable-lib${i} ) - done - - uses="faad jpeg libmpeg2 live mad mng png pnm speex tga theora tremor" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - # Pulls an outdated libopenjpeg, ffmpeg provides better support for it - myconf+=( --disable-libopenjpeg ) - - # Encoding - uses="faac x264 xvid toolame twolame" - if use encode; then - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - else - myconf+=( --disable-mencoder ) - for i in ${uses}; do - myconf+=( --disable-${i} ) - use ${i} && elog "Useflag \"${i}\" will only be useful for encoding, i.e., with \"encode\" useflag enabled." - done - fi - - ################# - # Binary codecs # - ################# - myconf+=( --disable-qtx --disable-real --disable-win32dll ) - - ################ - # Video Output # - ################ - uses="md5sum sdl yuv4mpeg" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use aalib || myconf+=( --disable-aa ) - use fbcon || myconf+=( --disable-fbdev ) - use libcaca || myconf+=( --disable-caca ) - use zoran || myconf+=( --disable-zr ) - - if ! use kernel_linux || ! use video_cards_mga; then - myconf+=( --disable-mga --disable-xmga ) - fi - - myconf+=( - --disable-3dfx - --disable-tdfxvid - --disable-tdfxfb - ) - - # sun card, disable by default, see bug #258729 - myconf+=( --disable-xvr100 ) - - ################ - # Audio Output # - ################ - myconf+=( --disable-esd ) - uses="alsa jack ladspa nas openal" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use pulseaudio || myconf+=( --disable-pulse ) - if ! use radio; then - use oss || myconf+=( --disable-ossaudio ) - fi - - #################### - # Advanced Options # - #################### - # Platform specific flags, hardcoded on amd64 (see below) - use cpudetection && myconf+=( --enable-runtime-cpudetection ) - - local x86_uses="3dnow 3dnowext avx avx2 fma3 fma4 mmx mmxext sse sse2 sse3 ssse3 xop" - for i in ${x86_uses}; do - myconf+=( $(use_enable cpu_flags_x86_${i} ${i}) ) - done - myconf+=( - $(use_enable cpu_flags_x86_sse4_1 sse4) - $(use_enable cpu_flags_x86_sse4_2 sse42) - ) - - myconf+=( - $(use_enable cpu_flags_arm_iwmmxt iwmmxt) - $(use_enable cpu_flags_arm_thumb thumb) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_arm_vfp armvfp) - $(use_enable cpu_flags_arm_vfpv3 vfpv3) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable shm) - ) - - use debug && myconf+=( --enable-debug=3 ) - - if use x86 && gcc-specs-pie; then - filter-flags -fPIC -fPIE - append-ldflags -nopie - fi - - ########################### - # X enabled configuration # - ########################### - myconf+=( --disable-gui ) - myconf+=( --disable-vesa ) - uses="ggi vdpau xinerama xv" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use dga || myconf+=( --disable-dga1 --disable-dga2 ) - use opengl || myconf+=( --disable-gl ) - use osdmenu && myconf+=( --enable-menu ) - use vidix || myconf+=( --disable-vidix --disable-vidix-pcidb ) - use xscreensaver || myconf+=( --disable-xss ) - use X || myconf+=( --disable-x11 ) - - ############################ - # OSX (aqua) configuration # - ############################ - if use aqua; then - myconf+=( - --enable-macosx-finder - --enable-macosx-bundle - ) - fi - - # Note: --enable-gnutls only makes sense with --enable-ffmpeg_a - edo ./configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - --prefix="${EPREFIX}/usr" \ - --bindir="${EPREFIX}/usr/bin" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --confdir="${EPREFIX}/etc/mplayer" \ - --datadir="${EPREFIX}/usr/share/mplayer${namesuf}" \ - --mandir="${EPREFIX}/usr/share/man" \ - --disable-ffmpeg_a \ - --disable-gnutls \ - "${myconf[@]}" -} - -src_compile() { - default - - # Build only user-requested docs if they're available. - if use doc ; then - # Select available languages from ${LINGUAS} - local ALLOWED_LINGUAS="cs de en es fr hu it pl ru zh_CN" - local BUILT_DOCS=() - local i - - for i in ${LINGUAS} ; do - has ${i} ${ALLOWED_LINGUAS} && BUILT_DOCS+=( ${i} ) - done - - if [[ -z ${BUILT_DOCS[@]} ]]; then - emake -j1 html-chunked - else - for i in ${BUILT_DOCS[@]}; do - emake -j1 html-chunked-${i} - done - fi - fi -} - -src_install() { - local i - - emake \ - DESTDIR="${D}" \ - INSTALLSTRIP="" \ - install - - dodoc AUTHORS Changelog Copyright README etc/codecs.conf - - docinto tech/ - dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist} - docinto TOOLS/ - dodoc -r TOOLS/* - docinto tech/mirrors/ - dodoc DOCS/tech/mirrors/* - - if use doc; then - docinto html/ - dodoc -r "${S}"/DOCS/HTML/* - fi - - if ! use truetype; then - dodir /usr/share/mplayer/fonts - - # Do this generic, as the mplayer people like to change the structure - # of their zips ... - local i - for i in $(find "${WORKDIR}/" -type d -name 'font-arial-*'); do - cp -pPR "${i}" "${ED}/usr/share/mplayer/fonts" - done - - # Fix the font symlink ... - rm -rf "${ED}/usr/share/mplayer/font" - dosym fonts/font-arial-14-iso-8859-1 /usr/share/mplayer/font - fi - - insinto /etc/mplayer - newins "${S}/etc/example.conf" mplayer.conf - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - # Config options can be section specific, global - # options should go in the default section - [default] - _EOF_ - - doins "${S}/etc/input.conf" - if use osdmenu; then - doins "${S}/etc/menu.conf" - fi - - if use truetype; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - fontconfig=1 - subfont-osd-scale=4 - subfont-text-scale=3 - _EOF_ - fi - - # bug #256203 - if use rar; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - unrarexec=${EPREFIX}/usr/bin/unrar - _EOF_ - fi - - dosym -r /etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf - newbin "${S}/TOOLS/midentify.sh" midentify -} - -pkg_preinst() { - [[ -d ${EROOT}/usr/share/mplayer/Skin/default ]] && \ - rm -rf "${EROOT}/usr/share/mplayer/Skin/default" -} - -pkg_postrm() { - # Cleanup stale symlinks - [[ -L "${EROOT}/usr/share/mplayer/font" && - ! -e "${EROOT}/usr/share/mplayer/font" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/font" - - [[ -L "${EROOT}/usr/share/mplayer/subfont.ttf" && - ! -e "${EROOT}/usr/share/mplayer/subfont.ttf" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/subfont.ttf" -} diff --git a/media-video/mplayer/mplayer-1.5_p20231206.ebuild b/media-video/mplayer/mplayer-1.5_p20231206.ebuild deleted file mode 100644 index bc755cc4ceb6..000000000000 --- a/media-video/mplayer/mplayer-1.5_p20231206.ebuild +++ /dev/null @@ -1,650 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit edo toolchain-funcs flag-o-matic - -if [[ ${PV} == *9999* ]]; then - EGIT_REPO_URI="https://git.ffmpeg.org/ffmpeg.git" - ESVN_REPO_URI="svn://svn.mplayerhq.hu/mplayer/trunk" - RELEASE_URI="" - - inherit subversion git-r3 -elif [[ "${PV%_rc*}" == "${PV}" && "${PV%_pre*}" == "${PV}" && "${PV%_p*}" == "${PV}" ]]; then - MY_P="MPlayer-${PV}" - S="${WORKDIR}/${MY_P}" - RELEASE_URI="mirror://mplayer/releases/${MY_P}.tar.xz" -else - # If necessary, don't be afraid to make a snapshot. - # http://www.mplayerhq.hu/design7/dload.html says: - # "We recommend to always use the latest SVN to get the all the new - # features and bugfixes, especially if the release date above looks old." - RELEASE_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" -fi - -FONT_URI=" - mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 -" - -DESCRIPTION="Media Player for Linux" -HOMEPAGE="http://www.mplayerhq.hu/" -SRC_URI=" - ${RELEASE_URI} - !truetype? ( ${FONT_URI} ) -" - -IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2" -IUSE+=" cpu_flags_x86_fma3 cpu_flags_x86_fma4" -IUSE+=" cpu_flags_x86_mmx cpu_flags_x86_mmxext" -IUSE+=" cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1" -IUSE+=" cpu_flags_x86_sse4_2 cpu_flags_x86_xop" -IUSE+=" cpu_flags_x86_3dnow cpu_flags_x86_3dnowext" - -IUSE+=" cpu_flags_arm_thumb cpu_flags_arm_neon cpu_flags_arm_vfp cpu_flags_arm_vfpv3" -IUSE+=" cpu_flags_arm_iwmmxt" -IUSE+=" cpu_flags_ppc_altivec" - -IUSE+=" a52 aalib +alsa aqua bidi bl bluray" -IUSE+=" bs2b cddb +cdio cdparanoia cpudetection debug dga doc dts dv dvb +dvd +dvdnav +enca +encode faac faad fbcon" -IUSE+=" ftp ggi gsm +iconv ipv6 jack joystick jpeg ladspa +libass libcaca libmpeg2 lirc live lzo mad md5sum" -IUSE+=" mng mp3 nas +network openal opengl +osdmenu oss png pnm pulseaudio pvr" -IUSE+=" radio rar rtc rtmp samba selinux +shm sdl speex" -IUSE+=" tga theora tremor +truetype toolame twolame +unicode v4l vcd vdpau vidix" -IUSE+=" vorbis +X x264 xinerama +xscreensaver +xv xvid yuv4mpeg zoran" - -VIDEO_CARDS="mga" -for x in ${VIDEO_CARDS}; do - IUSE+=" video_cards_${x}" -done - -FONT_RDEPS=" - media-libs/fontconfig - >=media-libs/freetype-2.2.1:2 - virtual/ttf-fonts -" -X_RDEPS=" - x11-libs/libXext - x11-libs/libXxf86vm -" -# - RAR: although -gpl version is nice, it can't do most functions normal rars can -# nemesi? ( net-libs/libnemesi ) -# - mplayer relies on private APIs in giflib that have been removed: -# https://sourceforge.net/p/giflib/bugs/132/ -RDEPEND=" - app-arch/bzip2 - >=media-video/ffmpeg-4.0:=[vdpau?] - sys-libs/ncurses:= - sys-libs/zlib - a52? ( media-libs/a52dec ) - aalib? ( media-libs/aalib ) - alsa? ( media-libs/alsa-lib ) - bidi? ( dev-libs/fribidi ) - bluray? ( >=media-libs/libbluray-0.2.1:= ) - bs2b? ( media-libs/libbs2b ) - cdio? ( - dev-libs/libcdio:= - dev-libs/libcdio-paranoia - ) - cdparanoia? ( !cdio? ( media-sound/cdparanoia ) ) - dga? ( x11-libs/libXxf86dga ) - dts? ( media-libs/libdca ) - dv? ( media-libs/libdv ) - dvd? ( >=media-libs/libdvdread-4.1.3:= ) - dvdnav? ( >=media-libs/libdvdnav-4.1.3:= ) - encode? ( - !twolame? ( toolame? ( media-sound/toolame ) ) - twolame? ( media-sound/twolame ) - faac? ( media-libs/faac ) - mp3? ( media-sound/lame ) - x264? ( >=media-libs/x264-0.0.20100423:= ) - xvid? ( media-libs/xvid ) - ) - enca? ( app-i18n/enca ) - faad? ( media-libs/faad2 ) - ggi? ( media-libs/libggi media-libs/libggiwmh ) - gsm? ( media-sound/gsm ) - iconv? ( virtual/libiconv ) - jack? ( virtual/jack ) - jpeg? ( media-libs/libjpeg-turbo:= ) - ladspa? ( media-libs/ladspa-sdk ) - libass? ( >=media-libs/libass-0.9.10:= ) - libcaca? ( media-libs/libcaca ) - libmpeg2? ( media-libs/libmpeg2 ) - lirc? ( app-misc/lirc ) - live? ( media-plugins/live ) - lzo? ( >=dev-libs/lzo-2 ) - mad? ( media-libs/libmad ) - mng? ( media-libs/libmng:= ) - mp3? ( media-sound/mpg123 ) - nas? ( media-libs/nas ) - openal? ( media-libs/openal ) - opengl? ( virtual/opengl ) - png? ( media-libs/libpng:= ) - pnm? ( media-libs/netpbm ) - pulseaudio? ( media-sound/pulseaudio ) - rar? ( - || ( - app-arch/unrar - app-arch/rar - ) - ) - rtmp? ( media-video/rtmpdump ) - samba? ( net-fs/samba ) - sdl? ( media-libs/libsdl ) - speex? ( media-libs/speex ) - theora? ( media-libs/libtheora[encode?] ) - tremor? ( media-libs/tremor ) - truetype? ( ${FONT_RDEPS} ) - vdpau? ( x11-libs/libvdpau ) - vorbis? ( !tremor? ( media-libs/libvorbis ) ) - X? ( ${X_RDEPS} ) - xinerama? ( x11-libs/libXinerama ) - xscreensaver? ( x11-libs/libXScrnSaver ) - xv? ( x11-libs/libXv ) -" -DEPEND=" - ${RDEPEND} - dga? ( x11-base/xorg-proto ) - dvb? ( sys-kernel/linux-headers ) - X? ( x11-base/xorg-proto ) - xinerama? ( x11-base/xorg-proto ) - xscreensaver? ( x11-base/xorg-proto ) -" -ASM_DEP="dev-lang/nasm" -BDEPEND=" - virtual/pkgconfig - amd64? ( ${ASM_DEP} ) - doc? ( - app-text/docbook-xml-dtd - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - ) - x86? ( ${ASM_DEP} ) -" -RDEPEND+="selinux? ( sec-policy/selinux-mplayer )" - -LICENSE="GPL-2" -SLOT="0" -if [[ ${PV} != *9999* ]]; then - KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86" -fi - -# faac codecs are nonfree -# libcdio support: prefer libcdio over cdparanoia and don't check for cddb w/cdio -# dvd navigation requires dvd read support -# ass and freetype font require iconv and ass requires freetype fonts -# unicode transformations are usefull only with iconv -# radio requires oss or alsa backend -REQUIRED_USE=" - dga? ( X ) - dvdnav? ( dvd ) - enca? ( iconv ) - ggi? ( X ) - libass? ( truetype ) - opengl? ( X ) - osdmenu? ( X ) - truetype? ( iconv ) - vdpau? ( X ) - vidix? ( X ) - xinerama? ( X ) - xscreensaver? ( X ) - xv? ( X )" -RESTRICT="faac? ( bindist )" - -PATCHES=( - "${FILESDIR}/${P}-incompatible-pointers.patch" -) - -pkg_setup() { - if [[ ${PV} == *9999* ]]; then - elog - elog "This is a live ebuild which installs the latest from upstream's" - elog "subversion repository, and is unsupported by Gentoo." - elog "Everything but bugs in the ebuild itself will be ignored." - elog - fi - - if use cpudetection; then - ewarn - ewarn "You've enabled the cpudetection flag. This feature is" - ewarn "included mainly for people who want to use the same" - ewarn "binary on another system with a different CPU architecture." - ewarn "MPlayer will already detect your CPU settings by default at" - ewarn "buildtime; this flag is used for runtime detection." - ewarn "You won't need this turned on if you are only building" - ewarn "mplayer for this system. Also, if your compile fails, try" - ewarn "disabling this use flag." - fi -} - -src_unpack() { - if [[ ${PV} == *9999* ]]; then - subversion_src_unpack - - cd "${WORKDIR}" || die - rm -rf "${WORKDIR}/${P}/ffmpeg/" || die - ( EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/ffmpeg/" git-r3_src_unpack ) - else - unpack ${A} - fi - - if [[ ${PV} == *9999* || "${PV%_rc*}" == "${PV}" ]]; then - cd "${S}" || die - cp "${FILESDIR}/dump_ffmpeg.sh" . || die - chmod +x dump_ffmpeg.sh || die - ./dump_ffmpeg.sh - fi - - if ! use truetype; then - unpack font-arial-iso-8859-1.tar.bz2 \ - font-arial-iso-8859-2.tar.bz2 \ - font-arial-cp1250.tar.bz2 - fi -} - -src_prepare() { - default - - local svf=snapshot_version - if [[ ${PV} == *9999* ]]; then - # Set SVN version manually - subversion_wc_info - printf "${ESVN_WC_REVISION}" > ${svf} || die - fi - - if [[ ! -f VERSION ]]; then - [[ -f "${svf}" ]] || die "Missing ${svf}. Did you generate your snapshot with prepare_mplayer.sh?" - - local sv=$(<${svf}) - printf "SVN-r${sv} (Gentoo)" > VERSION || die - fi - - # Fix path to bash executable in configure scripts - sed -i -e "1c\#!${EPREFIX}/bin/bash" configure version.sh || die - - # Use sane default for >=virtual/udev-197 - sed -i -e '/default_dvd_device/s:/dev/dvd:/dev/cdrom:' configure || die -} - -src_configure() { - # undefined reference to `sse_int32_map_factor' etc - # https://bugs.gentoo.org/650458 - # https://trac.mplayerhq.hu/ticket/2408 - use libass && use cpu_flags_x86_sse4_1 && filter-lto - - local myconf=() - local uses i - - # Set LINGUAS - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/da/dk}" - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/zh/zh_CN}" # bug #482968 - - # mplayer ebuild uses "use foo || --disable-foo" to forcibly disable - # compilation in almost every situation. The reason for this is - # because if --enable is used, it will force the build of that option, - # regardless of whether the dependency is available or not. - - ##################### - # Optional features # - ##################### - # Disable svga since we don't want it - # Disable arts since we don't have kde3 - # Always disable internal ass - # Disable opus and ilbc since it only controls support in internal - # ffmpeg which we do not use - myconf+=( - --disable-arts - --disable-ass-internal - --disable-directfb - --disable-kai - --disable-libilbc - --disable-libnut - --disable-libopus - --disable-svga --disable-svgalib_helper - --disable-xvmc - $(use_enable network networking) - $(use_enable joystick) - ) - - uses="bl bluray enca ftp rtc vcd" # nemesi <- not working with in-tree ebuild - myconf+=( --disable-nemesi ) # nemesi automagic disable - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use bidi || myconf+=( --disable-fribidi ) - use ipv6 || myconf+=( --disable-inet6 ) - use libass || myconf+=( --disable-ass ) - use rar || myconf+=( --disable-unrarexec ) - use samba || myconf+=( --disable-smb ) - use lirc || myconf+=( --disable-lirc --disable-lircc --disable-apple-ir ) - - # libcdio support: prefer libcdio over cdparanoia - # don't check for cddb w/cdio - if use cdio; then - myconf+=( --disable-cdparanoia ) - else - myconf+=( --disable-libcdio ) - use cdparanoia || myconf+=( --disable-cdparanoia ) - use cddb || myconf+=( --disable-cddb ) - fi - - ################################ - # DVD read, navigation support # - ################################ - # - # dvdread - accessing a DVD - # dvdnav - navigation of menus - use dvd || myconf+=( --disable-dvdread ) - use dvdnav || myconf+=( --disable-dvdnav ) - - ############# - # Subtitles # - ############# - # - # SRT/ASS/SSA (subtitles) requires freetype support - # freetype support requires iconv - # iconv optionally can use unicode - use truetype || myconf+=( --disable-freetype ) - use iconv || myconf+=( --disable-iconv --charset=noconv ) - use iconv && use unicode && myconf+=( --charset=UTF-8 ) - - ##################################### - # DVB / Video4Linux / Radio support # - ##################################### - myconf+=( --disable-tv-bsdbt848 ) - # gone since linux-headers-2.6.38 - myconf+=( --disable-tv-v4l1 ) - if { use dvb || use v4l || use pvr || use radio; }; then - use dvb || myconf+=( --disable-dvb ) - use pvr || myconf+=( --disable-pvr ) - use v4l || myconf+=( --disable-tv-v4l2 ) - if use radio && { use dvb || use v4l; }; then - myconf+=( - --enable-radio - $(use_enable encode radio-capture) - ) - else - myconf+=( - --disable-radio-v4l2 - --disable-radio-bsdbt848 - ) - fi - else - myconf+=( - --disable-tv - --disable-tv-v4l2 - --disable-radio - --disable-radio-v4l2 - --disable-radio-bsdbt848 - --disable-dvb - --disable-v4l2 - --disable-pvr - ) - fi - - ########## - # Codecs # - ########## - myconf+=( --disable-musepack ) # Use internal musepack codecs for SV7 and SV8 support - myconf+=( --disable-libmpeg2-internal ) # always use system media-libs/libmpeg2 - myconf+=( --disable-gif ) # relies on to-be-removed giflib internals https://sourceforge.net/p/giflib/bugs/132/ - use dts || myconf+=( --disable-libdca ) - if ! use mp3; then - myconf+=( - --disable-mp3lame - --disable-mpg123 - ) - fi - uses="a52 bs2b dv gsm lzo rtmp vorbis" - for i in ${uses}; do - use ${i} || myconf+=( --disable-lib${i} ) - done - - uses="faad jpeg libmpeg2 live mad mng png pnm speex tga theora tremor" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - # Pulls an outdated libopenjpeg, ffmpeg provides better support for it - myconf+=( --disable-libopenjpeg ) - - # Encoding - uses="faac x264 xvid toolame twolame" - if use encode; then - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - else - myconf+=( --disable-mencoder ) - for i in ${uses}; do - myconf+=( --disable-${i} ) - use ${i} && elog "Useflag \"${i}\" will only be useful for encoding, i.e., with \"encode\" useflag enabled." - done - fi - - ################# - # Binary codecs # - ################# - myconf+=( --disable-qtx --disable-real --disable-win32dll ) - - ################ - # Video Output # - ################ - uses="md5sum sdl yuv4mpeg" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use aalib || myconf+=( --disable-aa ) - use fbcon || myconf+=( --disable-fbdev ) - use libcaca || myconf+=( --disable-caca ) - use zoran || myconf+=( --disable-zr ) - - if ! use kernel_linux || ! use video_cards_mga; then - myconf+=( --disable-mga --disable-xmga ) - fi - - myconf+=( - --disable-3dfx - --disable-tdfxvid - --disable-tdfxfb - ) - - # sun card, disable by default, see bug #258729 - myconf+=( --disable-xvr100 ) - - ################ - # Audio Output # - ################ - myconf+=( --disable-esd ) - uses="alsa jack ladspa nas openal" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use pulseaudio || myconf+=( --disable-pulse ) - if ! use radio; then - use oss || myconf+=( --disable-ossaudio ) - fi - - #################### - # Advanced Options # - #################### - # Platform specific flags, hardcoded on amd64 (see below) - use cpudetection && myconf+=( --enable-runtime-cpudetection ) - - local x86_uses="3dnow 3dnowext avx avx2 fma3 fma4 mmx mmxext sse sse2 sse3 ssse3 xop" - for i in ${x86_uses}; do - myconf+=( $(use_enable cpu_flags_x86_${i} ${i}) ) - done - myconf+=( - $(use_enable cpu_flags_x86_sse4_1 sse4) - $(use_enable cpu_flags_x86_sse4_2 sse42) - ) - - myconf+=( - $(use_enable cpu_flags_arm_iwmmxt iwmmxt) - $(use_enable cpu_flags_arm_thumb thumb) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_arm_vfp armvfp) - $(use_enable cpu_flags_arm_vfpv3 vfpv3) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable shm) - ) - - use debug && myconf+=( --enable-debug=3 ) - - if use x86 && gcc-specs-pie; then - filter-flags -fPIC -fPIE - append-ldflags -nopie - fi - - ########################### - # X enabled configuration # - ########################### - myconf+=( --disable-gui ) - myconf+=( --disable-vesa ) - uses="ggi vdpau xinerama xv" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use dga || myconf+=( --disable-dga1 --disable-dga2 ) - use opengl || myconf+=( --disable-gl ) - use osdmenu && myconf+=( --enable-menu ) - use vidix || myconf+=( --disable-vidix --disable-vidix-pcidb ) - use xscreensaver || myconf+=( --disable-xss ) - use X || myconf+=( --disable-x11 ) - - ############################ - # OSX (aqua) configuration # - ############################ - if use aqua; then - myconf+=( - --enable-macosx-finder - --enable-macosx-bundle - ) - fi - - # Note: --enable-gnutls only makes sense with --enable-ffmpeg_a - edo ./configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - --prefix="${EPREFIX}/usr" \ - --bindir="${EPREFIX}/usr/bin" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --confdir="${EPREFIX}/etc/mplayer" \ - --datadir="${EPREFIX}/usr/share/mplayer${namesuf}" \ - --mandir="${EPREFIX}/usr/share/man" \ - --disable-ffmpeg_a \ - --disable-gnutls \ - "${myconf[@]}" -} - -src_compile() { - default - - # Build only user-requested docs if they're available. - if use doc ; then - # Select available languages from ${LINGUAS} - local ALLOWED_LINGUAS="cs de en es fr hu it pl ru zh_CN" - local BUILT_DOCS=() - local i - - for i in ${LINGUAS} ; do - has ${i} ${ALLOWED_LINGUAS} && BUILT_DOCS+=( ${i} ) - done - - if [[ -z ${BUILT_DOCS[@]} ]]; then - emake -j1 html-chunked - else - for i in ${BUILT_DOCS[@]}; do - emake -j1 html-chunked-${i} - done - fi - fi -} - -src_install() { - local i - - emake \ - DESTDIR="${D}" \ - INSTALLSTRIP="" \ - install - - dodoc AUTHORS Changelog Copyright README etc/codecs.conf - - docinto tech/ - dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist} - docinto TOOLS/ - dodoc -r TOOLS/* - docinto tech/mirrors/ - dodoc DOCS/tech/mirrors/* - - if use doc; then - docinto html/ - dodoc -r "${S}"/DOCS/HTML/* - fi - - if ! use truetype; then - dodir /usr/share/mplayer/fonts - - # Do this generic, as the mplayer people like to change the structure - # of their zips ... - local i - for i in $(find "${WORKDIR}/" -type d -name 'font-arial-*'); do - cp -pPR "${i}" "${ED}/usr/share/mplayer/fonts" - done - - # Fix the font symlink ... - rm -rf "${ED}/usr/share/mplayer/font" - dosym fonts/font-arial-14-iso-8859-1 /usr/share/mplayer/font - fi - - insinto /etc/mplayer - newins "${S}/etc/example.conf" mplayer.conf - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - # Config options can be section specific, global - # options should go in the default section - [default] - _EOF_ - - doins "${S}/etc/input.conf" - if use osdmenu; then - doins "${S}/etc/menu.conf" - fi - - if use truetype; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - fontconfig=1 - subfont-osd-scale=4 - subfont-text-scale=3 - _EOF_ - fi - - # bug #256203 - if use rar; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - unrarexec=${EPREFIX}/usr/bin/unrar - _EOF_ - fi - - dosym -r /etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf - newbin "${S}/TOOLS/midentify.sh" midentify -} - -pkg_preinst() { - [[ -d ${EROOT}/usr/share/mplayer/Skin/default ]] && \ - rm -rf "${EROOT}/usr/share/mplayer/Skin/default" -} - -pkg_postrm() { - # Cleanup stale symlinks - [[ -L "${EROOT}/usr/share/mplayer/font" && - ! -e "${EROOT}/usr/share/mplayer/font" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/font" - - [[ -L "${EROOT}/usr/share/mplayer/subfont.ttf" && - ! -e "${EROOT}/usr/share/mplayer/subfont.ttf" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/subfont.ttf" -} diff --git a/media-video/mplayer/mplayer-1.5_p20241125.ebuild b/media-video/mplayer/mplayer-1.5_p20241125.ebuild deleted file mode 100644 index cdb3edf883ac..000000000000 --- a/media-video/mplayer/mplayer-1.5_p20241125.ebuild +++ /dev/null @@ -1,654 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit edo toolchain-funcs flag-o-matic - -if [[ ${PV} == *9999* ]]; then - EGIT_REPO_URI="https://git.ffmpeg.org/ffmpeg.git" - ESVN_REPO_URI="svn://svn.mplayerhq.hu/mplayer/trunk" - RELEASE_URI="" - - inherit subversion git-r3 -elif [[ "${PV%_rc*}" == "${PV}" && "${PV%_pre*}" == "${PV}" && "${PV%_p*}" == "${PV}" ]]; then - MY_P="MPlayer-${PV}" - S="${WORKDIR}/${MY_P}" - RELEASE_URI="mirror://mplayer/releases/${MY_P}.tar.xz" -else - # If necessary, don't be afraid to make a snapshot. - # http://www.mplayerhq.hu/design7/dload.html says: - # "We recommend to always use the latest SVN to get the all the new - # features and bugfixes, especially if the release date above looks old." - RELEASE_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" -fi - -FONT_URI=" - mirror://mplayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-iso-8859-2.tar.bz2 - mirror://mplayer/releases/fonts/font-arial-cp1250.tar.bz2 -" - -DESCRIPTION="Media Player for Linux" -HOMEPAGE="http://www.mplayerhq.hu/" -SRC_URI=" - ${RELEASE_URI} - !truetype? ( ${FONT_URI} ) -" - -IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2" -IUSE+=" cpu_flags_x86_fma3 cpu_flags_x86_fma4" -IUSE+=" cpu_flags_x86_mmx cpu_flags_x86_mmxext" -IUSE+=" cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1" -IUSE+=" cpu_flags_x86_sse4_2 cpu_flags_x86_xop" -IUSE+=" cpu_flags_x86_3dnow cpu_flags_x86_3dnowext" - -IUSE+=" cpu_flags_arm_thumb cpu_flags_arm_neon cpu_flags_arm_vfp cpu_flags_arm_vfpv3" -IUSE+=" cpu_flags_arm_iwmmxt" -IUSE+=" cpu_flags_ppc_altivec" - -IUSE+=" a52 aalib +alsa aqua bidi bl bluray" -IUSE+=" bs2b cddb +cdio cdparanoia cpudetection debug dga doc dts dv dvb +dvd +dvdnav +enca +encode faac faad fbcon" -IUSE+=" ftp ggi gsm +iconv ipv6 jack joystick jpeg ladspa +libass libcaca libmpeg2 lirc live lzo mad md5sum" -IUSE+=" mng mp3 nas +network openal opengl +osdmenu oss png pnm pulseaudio pvr" -IUSE+=" radio rar rtc rtmp samba selinux +shm sdl speex" -IUSE+=" tga theora tremor +truetype toolame twolame +unicode v4l vcd vdpau vidix" -IUSE+=" vorbis +X x264 xinerama +xscreensaver +xv xvid yuv4mpeg zoran" - -VIDEO_CARDS="mga" -for x in ${VIDEO_CARDS}; do - IUSE+=" video_cards_${x}" -done - -FONT_RDEPS=" - media-libs/fontconfig - >=media-libs/freetype-2.2.1:2 - virtual/ttf-fonts -" -X_RDEPS=" - x11-libs/libXext - x11-libs/libXxf86vm -" -# - RAR: although -gpl version is nice, it can't do most functions normal rars can -# nemesi? ( net-libs/libnemesi ) -# - mplayer relies on private APIs in giflib that have been removed: -# https://sourceforge.net/p/giflib/bugs/132/ -RDEPEND=" - app-arch/bzip2 - >=media-video/ffmpeg-5.1:=[vdpau?] - sys-libs/ncurses:= - sys-libs/zlib - a52? ( media-libs/a52dec ) - aalib? ( media-libs/aalib ) - alsa? ( media-libs/alsa-lib ) - bidi? ( dev-libs/fribidi ) - bluray? ( >=media-libs/libbluray-0.2.1:= ) - bs2b? ( media-libs/libbs2b ) - cdio? ( - dev-libs/libcdio:= - dev-libs/libcdio-paranoia - ) - cdparanoia? ( !cdio? ( media-sound/cdparanoia ) ) - dga? ( x11-libs/libXxf86dga ) - dts? ( media-libs/libdca ) - dv? ( media-libs/libdv ) - dvd? ( >=media-libs/libdvdread-4.1.3:= ) - dvdnav? ( >=media-libs/libdvdnav-4.1.3:= ) - encode? ( - !twolame? ( toolame? ( media-sound/toolame ) ) - twolame? ( media-sound/twolame ) - faac? ( media-libs/faac ) - mp3? ( media-sound/lame ) - x264? ( >=media-libs/x264-0.0.20100423:= ) - xvid? ( media-libs/xvid ) - ) - enca? ( app-i18n/enca ) - faad? ( media-libs/faad2 ) - ggi? ( media-libs/libggi media-libs/libggiwmh ) - gsm? ( media-sound/gsm ) - iconv? ( virtual/libiconv ) - jack? ( virtual/jack ) - jpeg? ( media-libs/libjpeg-turbo:= ) - ladspa? ( media-libs/ladspa-sdk ) - libass? ( >=media-libs/libass-0.9.10:= ) - libcaca? ( media-libs/libcaca ) - libmpeg2? ( media-libs/libmpeg2 ) - lirc? ( app-misc/lirc ) - live? ( media-plugins/live ) - lzo? ( >=dev-libs/lzo-2 ) - mad? ( media-libs/libmad ) - mng? ( media-libs/libmng:= ) - mp3? ( media-sound/mpg123 ) - nas? ( media-libs/nas ) - openal? ( media-libs/openal ) - opengl? ( virtual/opengl ) - png? ( media-libs/libpng:= ) - pnm? ( media-libs/netpbm ) - pulseaudio? ( media-libs/libpulse ) - rar? ( - || ( - app-arch/unrar - app-arch/rar - ) - ) - rtmp? ( media-video/rtmpdump ) - samba? ( net-fs/samba ) - sdl? ( media-libs/libsdl ) - speex? ( media-libs/speex ) - theora? ( media-libs/libtheora[encode?] ) - tremor? ( media-libs/tremor ) - truetype? ( ${FONT_RDEPS} ) - vdpau? ( x11-libs/libvdpau ) - vorbis? ( !tremor? ( media-libs/libvorbis ) ) - X? ( ${X_RDEPS} ) - xinerama? ( x11-libs/libXinerama ) - xscreensaver? ( x11-libs/libXScrnSaver ) - xv? ( x11-libs/libXv ) -" -DEPEND=" - ${RDEPEND} - dga? ( x11-base/xorg-proto ) - dvb? ( sys-kernel/linux-headers ) - X? ( x11-base/xorg-proto ) - xinerama? ( x11-base/xorg-proto ) - xscreensaver? ( x11-base/xorg-proto ) -" -ASM_DEP="dev-lang/nasm" -BDEPEND=" - virtual/pkgconfig - amd64? ( ${ASM_DEP} ) - doc? ( - app-text/docbook-xml-dtd - app-text/docbook-xsl-stylesheets - dev-libs/libxslt - ) - x86? ( ${ASM_DEP} ) -" -RDEPEND+="selinux? ( sec-policy/selinux-mplayer )" - -LICENSE="GPL-2" -SLOT="0" -if [[ ${PV} != *9999* ]]; then - KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86" -fi - -# faac codecs are nonfree -# libcdio support: prefer libcdio over cdparanoia and don't check for cddb w/cdio -# dvd navigation requires dvd read support -# ass and freetype font require iconv and ass requires freetype fonts -# unicode transformations are usefull only with iconv -# radio requires oss or alsa backend -REQUIRED_USE=" - dga? ( X ) - dvdnav? ( dvd ) - enca? ( iconv ) - ggi? ( X ) - libass? ( truetype ) - opengl? ( X ) - osdmenu? ( X ) - truetype? ( iconv ) - vdpau? ( X ) - vidix? ( X ) - xinerama? ( X ) - xscreensaver? ( X ) - xv? ( X ) -" -RESTRICT="faac? ( bindist )" - -PATCHES=( - "${FILESDIR}"/${PN}-1.5_p20241125-c99.patch -) - -QA_CONFIG_IMPL_DECL_SKIP=( - _aligned_malloc -) - -pkg_setup() { - if [[ ${PV} == *9999* ]]; then - elog - elog "This is a live ebuild which installs the latest from upstream's" - elog "subversion repository, and is unsupported by Gentoo." - elog "Everything but bugs in the ebuild itself will be ignored." - elog - fi - - if use cpudetection; then - ewarn - ewarn "You've enabled the cpudetection flag. This feature is" - ewarn "included mainly for people who want to use the same" - ewarn "binary on another system with a different CPU architecture." - ewarn "MPlayer will already detect your CPU settings by default at" - ewarn "buildtime; this flag is used for runtime detection." - ewarn "You won't need this turned on if you are only building" - ewarn "mplayer for this system. Also, if your compile fails, try" - ewarn "disabling this use flag." - fi -} - -src_unpack() { - if [[ ${PV} == *9999* ]]; then - subversion_src_unpack - - cd "${WORKDIR}" || die - rm -rf "${WORKDIR}/${P}/ffmpeg/" || die - ( EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/ffmpeg/" git-r3_src_unpack ) - else - unpack ${A} - fi - - if [[ ${PV} == *9999* || "${PV%_rc*}" == "${PV}" ]]; then - cd "${S}" || die - cp "${FILESDIR}/dump_ffmpeg.sh" . || die - chmod +x dump_ffmpeg.sh || die - ./dump_ffmpeg.sh - fi - - if ! use truetype; then - unpack font-arial-iso-8859-1.tar.bz2 \ - font-arial-iso-8859-2.tar.bz2 \ - font-arial-cp1250.tar.bz2 - fi -} - -src_prepare() { - default - - local svf=snapshot_version - if [[ ${PV} == *9999* ]]; then - # Set SVN version manually - subversion_wc_info - printf "${ESVN_WC_REVISION}" > ${svf} || die - fi - - if [[ ! -f VERSION ]]; then - [[ -f "${svf}" ]] || die "Missing ${svf}. Did you generate your snapshot with prepare_mplayer.sh?" - - local sv=$(<${svf}) - printf "SVN-r${sv} (Gentoo)" > VERSION || die - fi - - # Fix path to bash executable in configure scripts - sed -i -e "1c\#!${EPREFIX}/bin/bash" configure version.sh || die - - # Use sane default for >=virtual/udev-197 - sed -i -e '/default_dvd_device/s:/dev/dvd:/dev/cdrom:' configure || die -} - -src_configure() { - # undefined reference to `sse_int32_map_factor' etc - # https://bugs.gentoo.org/650458 - # https://trac.mplayerhq.hu/ticket/2408 - use libass && use cpu_flags_x86_sse4_1 && filter-lto - - local myconf=() - local uses i - - # Set LINGUAS - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/da/dk}" - [[ -n ${LINGUAS} ]] && LINGUAS="${LINGUAS/zh/zh_CN}" # bug #482968 - - # mplayer ebuild uses "use foo || --disable-foo" to forcibly disable - # compilation in almost every situation. The reason for this is - # because if --enable is used, it will force the build of that option, - # regardless of whether the dependency is available or not. - - ##################### - # Optional features # - ##################### - # Disable svga since we don't want it - # Disable arts since we don't have kde3 - # Always disable internal ass - # Disable opus and ilbc since it only controls support in internal - # ffmpeg which we do not use - myconf+=( - --disable-arts - --disable-ass-internal - --disable-directfb - --disable-kai - --disable-libilbc - --disable-libnut - --disable-libopus - --disable-svga --disable-svgalib_helper - $(use_enable network networking) - $(use_enable joystick) - ) - - uses="bl bluray enca ftp rtc vcd" # nemesi <- not working with in-tree ebuild - myconf+=( --disable-nemesi ) # nemesi automagic disable - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use bidi || myconf+=( --disable-fribidi ) - use ipv6 || myconf+=( --disable-inet6 ) - use libass || myconf+=( --disable-ass ) - use rar || myconf+=( --disable-unrarexec ) - use samba || myconf+=( --disable-smb ) - use lirc || myconf+=( --disable-lirc --disable-lircc --disable-apple-ir ) - - # libcdio support: prefer libcdio over cdparanoia - # don't check for cddb w/cdio - if use cdio; then - myconf+=( --disable-cdparanoia ) - else - myconf+=( --disable-libcdio ) - use cdparanoia || myconf+=( --disable-cdparanoia ) - use cddb || myconf+=( --disable-cddb ) - fi - - ################################ - # DVD read, navigation support # - ################################ - # - # dvdread - accessing a DVD - # dvdnav - navigation of menus - use dvd || myconf+=( --disable-dvdread ) - use dvdnav || myconf+=( --disable-dvdnav ) - - ############# - # Subtitles # - ############# - # - # SRT/ASS/SSA (subtitles) requires freetype support - # freetype support requires iconv - # iconv optionally can use unicode - use truetype || myconf+=( --disable-freetype ) - use iconv || myconf+=( --disable-iconv --charset=noconv ) - use iconv && use unicode && myconf+=( --charset=UTF-8 ) - - ##################################### - # DVB / Video4Linux / Radio support # - ##################################### - myconf+=( --disable-tv-bsdbt848 ) - # gone since linux-headers-2.6.38 - myconf+=( --disable-tv-v4l1 ) - if { use dvb || use v4l || use pvr || use radio; }; then - use dvb || myconf+=( --disable-dvb ) - use pvr || myconf+=( --disable-pvr ) - use v4l || myconf+=( --disable-tv-v4l2 ) - if use radio && { use dvb || use v4l; }; then - myconf+=( - --enable-radio - $(use_enable encode radio-capture) - ) - else - myconf+=( - --disable-radio-v4l2 - --disable-radio-bsdbt848 - ) - fi - else - myconf+=( - --disable-tv - --disable-tv-v4l2 - --disable-radio - --disable-radio-v4l2 - --disable-radio-bsdbt848 - --disable-dvb - --disable-v4l2 - --disable-pvr - ) - fi - - ########## - # Codecs # - ########## - myconf+=( --disable-musepack ) # Use internal musepack codecs for SV7 and SV8 support - myconf+=( --disable-libmpeg2-internal ) # always use system media-libs/libmpeg2 - myconf+=( --disable-gif ) # relies on to-be-removed giflib internals https://sourceforge.net/p/giflib/bugs/132/ - use dts || myconf+=( --disable-libdca ) - if ! use mp3; then - myconf+=( - --disable-mp3lame - --disable-mpg123 - ) - fi - uses="a52 bs2b dv gsm lzo rtmp vorbis" - for i in ${uses}; do - use ${i} || myconf+=( --disable-lib${i} ) - done - - uses="faad jpeg libmpeg2 live mad mng png pnm speex tga theora tremor" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - # Pulls an outdated libopenjpeg, ffmpeg provides better support for it - myconf+=( --disable-libopenjpeg ) - - # Encoding - uses="faac x264 xvid toolame twolame" - if use encode; then - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - else - myconf+=( --disable-mencoder ) - for i in ${uses}; do - myconf+=( --disable-${i} ) - use ${i} && elog "Useflag \"${i}\" will only be useful for encoding, i.e., with \"encode\" useflag enabled." - done - fi - - ################# - # Binary codecs # - ################# - myconf+=( --disable-qtx --disable-real --disable-win32dll ) - - ################ - # Video Output # - ################ - uses="md5sum sdl yuv4mpeg" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use aalib || myconf+=( --disable-aa ) - use fbcon || myconf+=( --disable-fbdev ) - use libcaca || myconf+=( --disable-caca ) - use zoran || myconf+=( --disable-zr ) - - if ! use kernel_linux || ! use video_cards_mga; then - myconf+=( --disable-mga --disable-xmga ) - fi - - myconf+=( - --disable-3dfx - --disable-tdfxvid - --disable-tdfxfb - ) - - # sun card, disable by default, see bug #258729 - myconf+=( --disable-xvr100 ) - - ################ - # Audio Output # - ################ - myconf+=( --disable-esd ) - uses="alsa jack ladspa nas openal" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use pulseaudio || myconf+=( --disable-pulse ) - if ! use radio; then - use oss || myconf+=( --disable-ossaudio ) - fi - - #################### - # Advanced Options # - #################### - # Platform specific flags, hardcoded on amd64 (see below) - use cpudetection && myconf+=( --enable-runtime-cpudetection ) - - local x86_uses="3dnow 3dnowext avx avx2 fma3 fma4 mmx mmxext sse sse2 sse3 ssse3 xop" - for i in ${x86_uses}; do - myconf+=( $(use_enable cpu_flags_x86_${i} ${i}) ) - done - myconf+=( - $(use_enable cpu_flags_x86_sse4_1 sse4) - $(use_enable cpu_flags_x86_sse4_2 sse42) - ) - - myconf+=( - $(use_enable cpu_flags_arm_iwmmxt iwmmxt) - $(use_enable cpu_flags_arm_thumb thumb) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_arm_vfp armvfp) - $(use_enable cpu_flags_arm_vfpv3 vfpv3) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable shm) - ) - - use debug && myconf+=( --enable-debug=3 ) - - if use x86 && gcc-specs-pie; then - filter-flags -fPIC -fPIE - append-ldflags -nopie - fi - - ########################### - # X enabled configuration # - ########################### - myconf+=( --disable-gui ) - myconf+=( --disable-vesa ) - uses="ggi vdpau xinerama xv" - for i in ${uses}; do - use ${i} || myconf+=( --disable-${i} ) - done - use dga || myconf+=( --disable-dga1 --disable-dga2 ) - use opengl || myconf+=( --disable-gl ) - use osdmenu && myconf+=( --enable-menu ) - use vidix || myconf+=( --disable-vidix --disable-vidix-pcidb ) - use xscreensaver || myconf+=( --disable-xss ) - use X || myconf+=( --disable-x11 ) - - ############################ - # OSX (aqua) configuration # - ############################ - if use aqua; then - myconf+=( - --enable-macosx-finder - --enable-macosx-bundle - ) - fi - - # Note: --enable-gnutls only makes sense with --enable-ffmpeg_a - edo ./configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - --prefix="${EPREFIX}/usr" \ - --bindir="${EPREFIX}/usr/bin" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --confdir="${EPREFIX}/etc/mplayer" \ - --datadir="${EPREFIX}/usr/share/mplayer${namesuf}" \ - --mandir="${EPREFIX}/usr/share/man" \ - --disable-ffmpeg_a \ - --disable-gnutls \ - "${myconf[@]}" -} - -src_compile() { - default - - # Build only user-requested docs if they're available. - if use doc ; then - # Select available languages from ${LINGUAS} - local ALLOWED_LINGUAS="cs de en es fr hu it pl ru zh_CN" - local BUILT_DOCS=() - local i - - for i in ${LINGUAS} ; do - has ${i} ${ALLOWED_LINGUAS} && BUILT_DOCS+=( ${i} ) - done - - if [[ -z ${BUILT_DOCS[@]} ]]; then - emake -j1 html-chunked - else - for i in ${BUILT_DOCS[@]}; do - emake -j1 html-chunked-${i} - done - fi - fi -} - -src_install() { - local i - - emake \ - DESTDIR="${D}" \ - INSTALLSTRIP="" \ - install - - dodoc AUTHORS Changelog Copyright README etc/codecs.conf - - docinto tech/ - dodoc DOCS/tech/{*.txt,MAINTAINERS,mpsub.sub,playtree,TODO,wishlist} - docinto TOOLS/ - dodoc -r TOOLS/* - docinto tech/mirrors/ - dodoc DOCS/tech/mirrors/* - - if use doc; then - docinto html/ - dodoc -r "${S}"/DOCS/HTML/* - fi - - if ! use truetype; then - dodir /usr/share/mplayer/fonts - - # Do this generic, as the mplayer people like to change the structure - # of their zips ... - local i - for i in $(find "${WORKDIR}/" -type d -name 'font-arial-*'); do - cp -pPR "${i}" "${ED}/usr/share/mplayer/fonts" - done - - # Fix the font symlink ... - rm -rf "${ED}/usr/share/mplayer/font" - dosym fonts/font-arial-14-iso-8859-1 /usr/share/mplayer/font - fi - - insinto /etc/mplayer - newins "${S}/etc/example.conf" mplayer.conf - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - # Config options can be section specific, global - # options should go in the default section - [default] - _EOF_ - - doins "${S}/etc/input.conf" - if use osdmenu; then - doins "${S}/etc/menu.conf" - fi - - if use truetype; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - fontconfig=1 - subfont-osd-scale=4 - subfont-text-scale=3 - _EOF_ - fi - - # bug #256203 - if use rar; then - cat >> "${ED}/etc/mplayer/mplayer.conf" <<- _EOF_ - unrarexec=${EPREFIX}/usr/bin/unrar - _EOF_ - fi - - dosym -r /etc/mplayer/mplayer.conf /usr/share/mplayer/mplayer.conf - newbin "${S}/TOOLS/midentify.sh" midentify -} - -pkg_preinst() { - [[ -d ${EROOT}/usr/share/mplayer/Skin/default ]] && \ - rm -rf "${EROOT}/usr/share/mplayer/Skin/default" -} - -pkg_postrm() { - # Cleanup stale symlinks - [[ -L "${EROOT}/usr/share/mplayer/font" && - ! -e "${EROOT}/usr/share/mplayer/font" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/font" - - [[ -L "${EROOT}/usr/share/mplayer/subfont.ttf" && - ! -e "${EROOT}/usr/share/mplayer/subfont.ttf" ]] && \ - rm -f "${EROOT}/usr/share/mplayer/subfont.ttf" -}
