Smack build


#1

Hi,
What is the current build procedure for smack universe and child artifacts (smack+smackx)?
I am trying to build from source and was not really sure which source repo to build and how.
Thanks,
Shlomi


#2

The smack related stuff comes from this branch https://github.com/jitsi/jitsi/tree/smack4-2


#3

Cool, 10x for the reply.
So what needs to be done? What should be checked out and what is the command line to build only smack + smackx ?


#4

That branch is not using custom smack or smackx, it uses smack 4.2.1.


#5

Sorry… Let me rephrase:
if I want to build jitsi-videobridge from source (for example current master tip),
do I need to check out the smack branch you pointed to in order to build all the required the smack dependencies?

to be more specific :

this is the maven resolve output grepped for smack (“mvn dependency:resolve”):

[INFO] org.igniterealtime.smack:smack-core:jar:4.2.2-b1c107f:compile
[INFO] org.igniterealtime.smack:smack-bosh:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-tcp:jar:4.2.2-b1c107f:compile
[INFO] org.igniterealtime.smack:smack-debug:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-extensions:jar:4.2.2-b1c107f:compile
[INFO] org.jitsi:jnsapi:jar:0.0.3-jitsi-smack4.2-3:compile
[INFO] org.igniterealtime.smack:smack-java7:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-im:jar:4.2.2-b1c107f:compile
[INFO] org.igniterealtime.smack:smack-resolver-javax:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-experimental:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-sasl-javax:jar:4.2.1:compile
[INFO] org.igniterealtime.smack:smack-legacy:jar:4.2.1:compile

and it looks like more than one version found it’s way in, e.g.:
4.2.1
4.2.2-b1c107f
0.0.3-jitsi-smack4.2-3


#6

To build jvb from source, you only need to check out jvb source code and build. It will download the required dependencies.


#7

understood, but what I am trying to do is build the videobridge along with all jitsi.org artifacts it depends on - including all smack* for example…


#8

Then you need to checkout jitsi and branch smack-4.2 go into folder m2 and do mvn install. If you want to build smack, currently that branch uses smack 4.2.1, go and checkout smack and check their build process.


#9

10x, will give that a go


#10

hunting for that 4.2.2 snapshot (b1c107f) i found :

which if i am not mistaken looks like source branch is actually on the jitsi fork repo


and on another branch (4.2.2-jitsi) like, here:

and that looks like a gradle build…
is that correct?


#11

Hi Damian, I would appreciate a reply, 10x :slight_smile:


#12

Yes that is a jitsi fork of smack, all the changes are pushed as PRs to smack repo and accepted, but not back-ported to older versions, that’s why for some we have such forking, but they are not too far away from upstream.
It is a gradle build but in the first commit you mention I had added the steps we used to push the versions to our maven repo.