Skip to content

Commit

Permalink
Merge branch 'buildchanges'
Browse files Browse the repository at this point in the history
  • Loading branch information
bgrins committed Jun 10, 2014
2 parents ffbecc6 + f75e32b commit d1c83c1
Show file tree
Hide file tree
Showing 2,191 changed files with 538,150 additions and 21,932 deletions.
41 changes: 41 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,44 @@
.DS_Store
thumbs.db
*.bc

*.o
*.d


build/dist
build/ffmpeg/config.fate
build/ffmpeg/config.h
build/ffmpeg/config.log
build/ffmpeg/config.mak
build/ffmpeg/ffprobe
build/ffmpeg/ffmpeg
build/ffmpeg/ffprobe_g
build/ffmpeg/libavcodec/libavcodec.a
build/ffmpeg/libavdevice/libavdevice.a
build/ffmpeg/libavfilter/libavfilter.a
build/ffmpeg/libavformat/libavformat.a
build/ffmpeg/libavutil/libavutil.a
build/ffmpeg/libswresample/libswresample.a
build/ffmpeg/libswscale/libswscale.a
build/ffmpeg/libavcodec/libavcodec.pc
build/ffmpeg/libavdevice/libavdevice.pc
build/ffmpeg/libavfilter/libavfilter.pc
build/ffmpeg/libavformat/libavformat.pc
build/ffmpeg/libavutil/libavutil.pc
build/ffmpeg/libpostproc/libpostproc.a
build/ffmpeg/libpostproc/libpostproc.pc
build/ffmpeg/libswresample/libswresample.pc
build/ffmpeg/libswscale/libswscale.pc
build/ffmpeg/doc/config.texi
build/ffmpeg/doc/examples/pc-uninstalled/libavcodec.pc
build/ffmpeg/doc/examples/pc-uninstalled/libavdevice.pc
build/ffmpeg/doc/examples/pc-uninstalled/libavfilter.pc
build/ffmpeg/doc/examples/pc-uninstalled/libavformat.pc
build/ffmpeg/ffmpeg_g

build/zlib/libz.a
build/zlib/example
build/zlib/example64
build/zlib/minigzip
build/zlib/minigzip64
87 changes: 87 additions & 0 deletions build/build_all_codecs.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Current build uses emscripten at commit df11c6f1fd1636a355b83a1c48b3a890596e6a32
echo "Beginning Build:"

rm -r dist
mkdir -p dist

# cd libogg
# make clean
# emconfigure ./configure --prefix=$(pwd)/../dist
# emmake make
# emmake make install
# cd ..

# cd libvorbis
# make clean
# emconfigure ./configure --disable-oggtest --prefix=$(pwd)/../dist
# emmake make
# emmake make install
# cd ..

cd zlib
make clean
emconfigure ./configure --prefix=$(pwd)/../dist --64
emmake make
emmake make install
cd ..

cd libvpx
## Try some of these options: ./configure --target=js1-none-clang_emscripten --disable-examples --disable-docs --disable-multithread --disable-runtime-cpu-detect --disable-optimizations --disable-vp8-decoder --disable-vp9-decoder --extra-cflags="-O2"
make clean
emconfigure ./configure --prefix=$(pwd)/../dist --disable-examples --disable-docs \
--disable-runtime-cpu-detect --disable-multithread --disable-optimizations \
--target=generic-gnu
emmake make
emmake make install
cd ..

# x264-snapshot-20140501-2245
cd x264
make clean
emconfigure ./configure --disable-thread --disable-asm \
--host=i686-pc-linux-gnu \
--disable-cli --enable-static --disable-gpl --prefix=$(pwd)/../dist
emmake make
emmake make install
cd ..

cd ffmpeg

make clean
emconfigure ./configure --cc="emcc" --prefix=$(pwd)/../dist --extra-cflags="-I$(pwd)/../dist/include -v" --enable-cross-compile --target-os=none --arch=x86_32 --cpu=generic \
--disable-ffplay --disable-ffprobe --disable-ffserver --disable-asm --disable-doc --disable-devices --disable-pthreads --disable-w32threads --disable-network \
--disable-hwaccels --disable-parsers --disable-bsfs --disable-debug --disable-protocols --disable-indevs --disable-outdevs --enable-protocol=file \
--enable-libvpx --enable-gpl --extra-libs="$(pwd)/../dist/lib/libx264.a $(pwd)/../dist/lib/libvpx.a"

# If we --enable-libx264 there is an error. Instead just act like it is there, extra-libs seems to work.
sed -i '' 's/define CONFIG_LIBX264 0/define CONFIG_LIBX264 1/' config.h
sed -i '' 's/define CONFIG_LIBX264_ENCODER 0/define CONFIG_LIBX264_ENCODER 1/' config.h
sed -i '' 's/define CONFIG_LIBX264RGB_ENCODER 0/define CONFIG_LIBX264RGB_ENCODER 1/' config.h
sed -i '' 's/define CONFIG_H264_PARSER 0/define CONFIG_H264_PARSER 1/' config.h

sed -i '' 's/\!CONFIG_LIBX264=yes/CONFIG_LIBX264=yes/' config.mak
sed -i '' 's/\!CONFIG_LIBX264_ENCODER=yes/CONFIG_LIBX264_ENCODER=yes/' config.mak
sed -i '' 's/\!CONFIG_LIBX264RGB_ENCODER=yes/CONFIG_LIBX264RGB_ENCODER=yes/' config.mak
sed -i '' 's/\!CONFIG_H264_PARSER=yes/CONFIG_H264_PARSER=yes/' config.mak

make
make install

cd ..

rm dist/*.bc

# cp dist/lib/libogg.a dist/libogg.bc
# cp dist/lib/libvorbis.a dist/libvorbis.bc

cp dist/lib/libvpx.a dist/libvpx.bc
cp dist/lib/libz.a dist/libz.bc
cp dist/lib/libx264.a dist/libx264.bc
cp ffmpeg/ffmpeg dist/ffmpeg.bc

cd dist
emcc -s OUTLINING_LIMIT=100000 -s VERBOSE=1 -s TOTAL_MEMORY=33554432 -O2 -v ffmpeg.bc libx264.bc libvpx.bc libz.bc -o ../ffmpeg-all-codecs.js --pre-js ../ffmpeg_pre.js --post-js ../ffmpeg_post.js
cd ..


echo "Finished Build"
13 changes: 0 additions & 13 deletions build/build_ffprobe.sh

This file was deleted.

35 changes: 31 additions & 4 deletions build/build_lgpl.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,41 @@

echo "Beginning Build:"

rm -r dist
mkdir -p dist

cd zlib
make clean
emconfigure ./configure --prefix=$(pwd)/../dist --64
emmake make
emmake make install
cd ..

cd ffmpeg

emconfigure ./configure --cc="emcc" --enable-cross-compile --target-os=none --arch=x86_32 --cpu=generic --disable-ffplay --disable-ffprobe --disable-ffserver --disable-asm --disable-doc --disable-devices --disable-pthreads --disable-w32threads --disable-network --disable-hwaccels --disable-parsers --disable-bsfs --disable-debug --disable-zlib --disable-protocols --disable-indevs --disable-outdevs --enable-protocol=file --enable-pic --enable-small
#--enable-small

make clean
emconfigure ./configure --cc="emcc" --prefix=$(pwd)/../dist --enable-cross-compile --target-os=none --arch=x86_32 --cpu=generic \
--disable-ffplay --disable-ffprobe --disable-ffserver --disable-asm --disable-doc --disable-devices --disable-pthreads --disable-w32threads --disable-network \
--disable-hwaccels --disable-parsers --disable-bsfs --disable-debug --disable-protocols --disable-indevs --disable-outdevs --enable-protocol=file \

make
cp ffmpeg ffmpeg.bc
emcc -s VERBOSE=1 -s ASM_JS=0 -s TOTAL_MEMORY=33554432 -O2 -v ffmpeg.bc -o ../ffmpeg.js --pre-js ../ffmpeg_pre.js --post-js ../ffmpeg_post.js
make install


cd ..

cd dist

rm *.bc

cp lib/libz.a dist/libz.bc
cp ../ffmpeg/ffmpeg ffmpeg.bc

emcc -s OUTLINING_LIMIT=100000 -s VERBOSE=1 -s TOTAL_MEMORY=33554432 -O2 -v ffmpeg.bc -o ../ffmpeg.js --pre-js ../ffmpeg_pre.js --post-js ../ffmpeg_post.js

cd ..

cd ../

echo "Finished Build"
15 changes: 0 additions & 15 deletions build/build_lgpl_asm.sh

This file was deleted.

Loading

0 comments on commit d1c83c1

Please sign in to comment.