Lots of work to keep it good. I have a motocross track, as well as bmx jumps. i work both of them everytime I ride. Good dirt is your best friend, clay or blue groove. sandy or rocky dirt doesnt pack well.
You can also add lime [available at home depot or lowes] to your dirt to harden it up. You mix it in with water and make a mud mixture, then build jump faces with that. Dont make the mixture too muddy though, cant build with soup.