better makefiling