in ns3.39,waf is replaced by cmake. i have planed to port sns3 to
ns3.39.it isn't a difficult thing. but i haven‘t done this. i give you my plan.
Before ns3.36 (if I remember correctly), for any .cc or .h files you wrote in ns3, you had to specify them in the wscript file (you can think of this as a configuration file), so that ns3 could compile and run your files. However, in ns3.39, wscript has been replaced by cmake. The simplest approach is to convert the aforementioned configuration file to the cmake format. Of course, you might encounter more complex issues. After all, since ns3.39 has been upgraded, some of the modules from ns2.29 have undoubtedly been modified. Then, the question arises: has sns3 used any of these modified modules? (Sns3 uses ns2.9's modules, but when porting to ns3.39, is there any need to modify the original ns2.9 code used by sns3?). That would depend on your specific operations. My suggestion is to first convert the configuration file directly to cmake (following the official guidelines. The official documentation does explain how to transition from waf to cmake, which should be mentioned in the manual of ns3.36 or later versions). After that, check if the results are correct. If they're not, you should then investigate whether some of the modules from ns2.9 need manual updating to ns3.39. Here, I recommend you do it file by file. That is, when porting the sns3 module code from ns2.9, add a file, compile it, then add another file, compile again. This step-by-step approach is generally more stable.
It's a bit tedious, but not too difficult.
-----
by the way,i am now doing project with hypatia and ns3-leo. if your project is about leo,i recommand you to try these module.