You should use a Makefile to compile your code and be sure there are no errors by using -Wall and -Werror. The executable for this project will be called "myls" This command will execute similar to the ls function call, except you will be traversing the directory yourself. One additional option beyond homework 1/lopt will be provided called -r. -r will do one level of recursive directory listing. In other words, if you have the following directory: hw2/lot/ls and you are currently in hw2, ls -r will print all files in hw2 and all files in lot but it will not print the files in the ls directory. You should alphabetically organize the listed files. (This will require a sort! - try qsort or write your own) Options -n n - line number to output, use 0 for all, 0 by default -g - display group id, off by default -o - display owner, off by default -p - display permissions, off by default -d - display date, off by default -f - display filename on by default -r - one level of resursive display By default, myls will simply print a list of filenames. All options should be usable on lines by themselves or grouped together. This assignment is due on 10/19, but I recommend making some progress before the exam and thus have dedicated some class time to it.