Skip to content

Commit d9e17b9

Browse files
author
Clement Champetier
committed
Sconscript: manage java binding if first build
* We can't generate JAR file while first build, because java classes are not already generated. Need to relaunch the build to generate it. * Print a warning message for java binding if first build. * Generate JAR file when it's possible.
1 parent 4addb0a commit d9e17b9

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

src/SConscript

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -85,29 +85,20 @@ javaAvTranscoder_class = env.Java(
8585
source = Glob( envJava['JARCHDIR'] )
8686
)
8787

88-
javaAvTranscoder_jar = env.Jar(
89-
target = 'jAvTranscoderJar',
90-
source = javaAvTranscoder_class
91-
)
92-
9388
env.Depends( javaAvTranscoder_class, javaAvTranscoder )
94-
env.Depends( javaAvTranscoder_jar, javaAvTranscoder_class )
9589

9690
Export( { 'sAvTranscoder' : staticAvTranscoder } )
9791
Export( { 'AvTranscoder' : sharedAvTranscoder } )
9892
Export( { 'jAvTranscoder' : javaAvTranscoder } )
9993
Export( { 'pyAvTranscoder' : pythonAvTranscoder } )
10094

10195
Export( { 'jAvTranscoderClass' : javaAvTranscoder_class } )
102-
Export( { 'jAvTranscoderJar' : javaAvTranscoder_jar } )
10396

10497
env.Alias( "install", env.InstallVersionedLib( os.path.join( installPrefix, "lib" ), sharedAvTranscoder) )
10598
env.Alias( "install", env.Install( os.path.join( installPrefix, "lib" ), staticAvTranscoder ) )
10699
env.Alias( "install", env.InstallVersionedLib( os.path.join( installPrefix, "lib" ), javaAvTranscoder ) )
107100
env.Alias( "install", env.InstallVersionedLib( os.path.join( installPrefix, "lib" ), pythonAvTranscoder ) )
108101

109-
env.Alias( "install", env.Install( os.path.join( installPrefix, "jar" ), javaAvTranscoder_jar) )
110-
111102
env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTranscoder" ), Glob( 'AvTranscoder/*.hpp' ) ) )
112103
env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTranscoder/CodedStream" ), Glob( 'AvTranscoder/CodedStream/*.hpp' ) ) )
113104
env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTranscoder/CodedStructures" ), Glob( 'AvTranscoder/CodedStructures/*.hpp' ) ) )
@@ -118,3 +109,13 @@ env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTransc
118109
env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTranscoder/Metadatas" ), Glob( 'AvTranscoder/Metadatas/MediaMetadatasStructures.hpp' ) ) )
119110
env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTranscoder/Metadatas" ), Glob( 'AvTranscoder/Metadatas/Print.hpp' ) ) )
120111
env.Alias( "install", env.Install(os.path.join( installPrefix, "include/AvTranscoder/Transcoder" ), Glob( 'AvTranscoder/Transcoder/*.hpp' ) ) )
112+
113+
if not javaAvTranscoder_class:
114+
print "Java binding: can't generate JAR file while first build, because java classes are not already generated. Relaunch the build to generate it."
115+
else:
116+
javaAvTranscoder_jar = env.Jar(
117+
target = 'jAvTranscoderJar',
118+
source = javaAvTranscoder_class
119+
)
120+
env.Depends( javaAvTranscoder_jar, javaAvTranscoder_class )
121+
Export( { 'jAvTranscoderJar' : javaAvTranscoder_jar } )

0 commit comments

Comments
 (0)