There is another option, although I don't recommend it, because you would probably die as well in the process. The last ditch method of freediver rescue is a variable weight dive. The idea is to use all the weight you have access to, and then ditch that weight at the bottom.
Sometimes all you have is your weight belt, which you can ditch at the bottom. But, if you have access to someone else's weight belt (for example if there are two guys at the surface with pb's of 30m), then you can take BOTH weight belts down with you and drop BOTH at the bottom, and the weight belt of your dying friend as well.
If there are three divers total, then there is yet another method, it is called the sacrificial rescue. The idea is to rescue your friend (probably in variable weight), knowing that you will black out around 10-15m on the ascent. Then, it is up to the 3rd man to rescue both of you, he would be waiting at that depth....
However, DO NOT attempt what I have described. It is insanely dangerous (especially if you have never tried it), and you would almost certainly die.
I was once in a situation similar to this. I was the safety freediver at a competition. I rescued the first competitor at who blacked out at 15m and dragged her to the surface (very exhausting!) Then, 5 minutes later the next diver went down. I went to meet him at 25m (I was still out of breath from the last rescue!!). I waited and waited and he didn't show up (turns out the bottom plate was 21m too deep: 71m instead of 50m).
I started getting contractions and finally I saw the diver coming up (no fins). He knew he was in trouble and aborted by grabbing the line and starting free immersion. He came in front of me and blacked out right in front of me around 23m. I was already running low on air, and I had to pull him all the way back up (with bifins). Dragging up a dead diver is about 3 times harder than a regular ascent, so a 23m ascent with a dead diver is like a 69m ascent without the diver (after already a LONG hang at 25m...). The 2nd safety freediver was at the surface (he had already run out of air). The visibility in the first 10m was extremely low (1-2m) so it was not possible to see anything from the surface.
By the time I reached 10m on the ascent, I thought for sure I was going to black out (still holding the unconscious diver in my hands). There was no one around in the murky green water... just me, and the guy I was carrying...
I could only hope that the people at the surface would eventually come down to look for me (I had no lanyard on, but the unconscious diver did -- but if I BO and let go, I sink away...)
As I neared the surface my vision was fading fast and I couldn't think clearly anymore. I got to the surface and don't really remember the first few seconds -- but the moment I caught my breath I started trying to rescuscitate the BO'd diver. Eventually someone took over, and it took about 3 minutes to bring him back.