comparison johndyer-mediaelement-13fa20a/src/Builder.py @ 0:032bc65ebafc

added core components
author George Fazekas <gyorgy.fazekas@eecs.qmul.ac.uk>
date Wed, 06 Mar 2013 15:45:48 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:032bc65ebafc
1 import sys
2 import os
3 import shutil
4
5 me_filename = 'mediaelement'
6 mep_filename = 'mediaelementplayer'
7 combined_filename = 'mediaelement-and-player'
8
9 # BUILD MediaElement (single file)
10
11 me_files = []
12 me_files.append('me-header.js')
13 me_files.append('me-namespace.js')
14 me_files.append('me-utility.js')
15 me_files.append('me-plugindetector.js')
16 me_files.append('me-featuredetection.js')
17 me_files.append('me-mediaelements.js')
18 me_files.append('me-shim.js')
19
20 code = ''
21
22 for item in me_files:
23 src_file = open('js/' + item,'r')
24 code += src_file.read() + "\n"
25
26 tmp_file = open('../build/' + me_filename + '.js','w')
27 tmp_file.write(code)
28 tmp_file.close()
29
30 # BUILD MediaElementPlayer (single file)
31
32 mep_files = []
33 mep_files.append('mep-header.js')
34 mep_files.append('mep-library.js')
35 mep_files.append('mep-player.js')
36 mep_files.append('mep-feature-playpause.js')
37 mep_files.append('mep-feature-stop.js')
38 mep_files.append('mep-feature-progress.js')
39 mep_files.append('mep-feature-time.js')
40 mep_files.append('mep-feature-volume.js')
41 mep_files.append('mep-feature-fullscreen.js')
42 mep_files.append('mep-feature-tracks.js')
43 mep_files.append('mep-feature-contextmenu.js')
44
45 code = ''
46
47 for item in mep_files:
48 src_file = open('js/' + item,'r')
49 code += src_file.read() + "\n"
50
51 tmp_file = open('../build/' + mep_filename + '.js','w')
52 tmp_file.write(code)
53 tmp_file.close()
54
55 # MINIFY both scripts
56
57 # os.system("java -jar yuicompressor-2.4.2.jar ../build/" + me_filename + ".js -o ../build/" + me_filename + ".min.js --charset utf-8 -v")
58 # os.system("java -jar yuicompressor-2.4.2.jar ../build/" + mep_filename + ".js -o ../build/" + mep_filename + ".min.js --charset utf-8 -v")
59 os.system("java -jar compiler.jar --js ../build/" + me_filename + ".js --js_output_file ../build/" + me_filename + ".min.js")
60 os.system("java -jar compiler.jar --js ../build/" + mep_filename + ".js --js_output_file ../build/" + mep_filename + ".min.js")
61
62 # PREPEND intros
63 def addHeader(headerFilename, filename):
64
65 # get the header text
66 tmp_file = open(headerFilename)
67 header_txt = tmp_file.read();
68 tmp_file.close()
69
70 # read the current contents of the file
71 tmp_file = open(filename)
72 file_txt = tmp_file.read()
73 tmp_file.close()
74
75 # open the file again for writing
76 tmp_file = open(filename, 'w')
77 tmp_file.write(header_txt)
78 # write the original contents
79 tmp_file.write(file_txt)
80 tmp_file.close()
81
82 addHeader('js/me-header.js', '../build/' + me_filename + '.min.js')
83 addHeader('js/mep-header.js', '../build/' + mep_filename + '.min.js')
84
85
86 # COMBINE into single script
87
88 code = ''
89 src_file = open('../build/' + me_filename + '.js','r')
90 code += src_file.read() + "\n"
91 src_file = open('../build/' + mep_filename + '.js','r')
92 code += src_file.read() + "\n"
93
94 tmp_file = open('../build/' + combined_filename + '.js','w')
95 tmp_file.write(code)
96 tmp_file.close()
97
98 code = ''
99 src_file = open('../build/' + me_filename + '.min.js','r')
100 code += src_file.read() + "\n"
101 src_file = open('../build/' + mep_filename + '.min.js','r')
102 code += src_file.read() + "\n"
103
104 tmp_file = open('../build/' + combined_filename + '.min.js','w')
105 tmp_file.write(code)
106 tmp_file.close()
107
108
109 # MINIFY CSS
110 src_file = open('css/mediaelementplayer.css','r')
111 tmp_file = open('../build/mediaelementplayer.css','w')
112 tmp_file.write(src_file.read())
113 tmp_file.close()
114 os.system("java -jar yuicompressor-2.4.2.jar ../build/mediaelementplayer.css -o ../build/mediaelementplayer.min.css --charset utf-8 -v")
115
116 #COPY skin files
117 shutil.copy2('css/controls.png','../build/controls.png')
118 shutil.copy2('css/bigplay.png','../build/bigplay.png')
119 shutil.copy2('css/loading.gif','../build/loading.gif')
120
121 shutil.copy2('css/mejs-skins.css','../build/mejs-skins.css')
122 shutil.copy2('css/controls-ted.png','../build/controls-ted.png')
123 shutil.copy2('css/controls-wmp.png','../build/controls-wmp.png')
124 shutil.copy2('css/controls-wmp-bg.png','../build/controls-wmp-bg.png')