In the good old days it was easy to just use your router to forward WoL packets but broadcast storms and other DOS attacks forced manufacturers to close off port forwarding on the broadcast address.
You can use anything that will let you compile c code, I've tested on a Mac and PC but I'm going to run through how to get it running on a Raspberry Pi as they are so cheap and ideal for this.
Configure your Pi - there's more info about configuring headerless in the video below.
Next grab the code from Github and compile with
gcc wolf.c -o wolf and then run with
If you want to run as a service on Debian based systems there is more information in the video and in this gist.