As per my comment, you have specified UNO board, but it doesn't have Keyboard/Joystick required definitions for the board (I'm not sure if UNO has any buttons to be defined there, it only has Leds, and leds are defined in Led.h - check out \LUFA-111009\LUFA\Drivers\Board\AVR8\UNO)
So what you could do is to create Board folder under your KeyboardMouse and make empty files Joystick.h and Buttons.h there. This should get you going further. Errors you are seeing are due to the following code in \LUFA\Drivers\Board\Buttons.h
#if (BOARD == BOARD_NONE)
#error The Board Buttons driver cannot be used if the makefile BOARD option is not set.
#elif (BOARD == BOARD_USBKEY)
#include "AVR8/USBKEY/Buttons.h"
....
#else
#include "Board/Buttons.h" <------ THIS IS EXECUTED SINCE UNO DOES NOT HAVE BUTTONS
#endif
So your error
../../../../LUFA/Drivers/Board/Joystick.h:119:31: error:
Board/Joystick.h: No such file or directory
means that your folder structure and your LUFA configuration is correct, but you're missing file Buttons.h in your KeyboardMouse/Board/ folder. Got it?
Try what I've suggested and see how far you get. You can see how to define buttons in other Board's folders, for example in LUFA\Drivers\Board\AVR8\USBKEY\
EDIT
Btw, I forgot to mention, error about common.h should go away hopefully after fixing this since that ........\ is coming from a file in a different location in folder structure thus confusion.
EDIT
OK, so here's the link on how to build custom board drivers:
http://www.fourwalledcubicle.com/files/LUFA/Doc/111009/html/page_writing_board_drivers.html
What you need to do is to copy files Buttons.h and Joystick.h LUFA\CodeTemplates\DriverStubs\ (or try copying Buttons.h and Joystick.h from USBKEY better, I think you still would need to specify a value for each definition otherwise) This should get rid of undefined errors. You have TODO sections in the files that you need to update.
OK, so I think I should also mention how this is supposed to be used before going further. These drivers/definitions are meant to be used in a specific manner in your code, and LUFA is unifying the approach for you. As far as I can tell, buttons are used in a following manner:
if (Buttons_GetStatus() & BUTTONS_BUTTON1){ ... do something when button 1 pressed....
This way, if you have several boards with at least one button, your code should theoretically stay the same across the boards.
Similar stands for LEDs, you can use them like:
LEDs_SetAllLEDs(LEDMASK_USB_NOTREADY);
....
LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
I hope you get the picture. In order to use these library functions you have to define buttons/joystick/led specifics in their respective header files. So for example - in buttons.h you need to specify any custom header files you need, add port masks for buttons (on which pin of which port they are connected), specify port initialization and how to read the status of the buttons. You can find all of that in the USBKEY's buttons.h - e.g. it's importing common.h, defines BUTTONS_BUTTON1 like pin 2 of a port, initializes PortE with this button (so button is pin 2 on port E), and in Buttons_GetStatus it reads the status of the button.
I could go on and on in the same manner for joystick as well, but I hope you get the picture. Joystick is more involved but it's like having 4 buttons of which 0, 1 or 2 can be active at any time.
BTW, this is only useful if you have any buttons on your board. For example, I made keyboard driver without any buttons (I had to remove buttons specific code though). I used Ir Diode to read remote control codes and make the board act as keyboard. So you don't really need the buttons, nor the joystick (of course, it completely depends on what you're doing).
Best Answer
I just built the Arduino 1.0 core as a static library in Eclipse and using Windows 7. One thing you didn't mention is that you have to get pins_arduino.h from somewhere as well. For the Uno, which uses the ATMega328P, I believe, I think you want the "standard" variant.
Could it be you just got the wrong pins_arduino.h file for your target chip? Also are you sure you have the right chip and clock speed selected under Project Settings => AVR => Target Hardware?
I would delete your Arduino Core static library project, start over by downloading the Arduino 1.0 zip file from arduino.cc, and make a new project from scratch. I just redid the process a couple times to make sure there were no problems and it's pretty quick to apply the project settings once you've done it once (took me < 5 minutes the second time).
Edit WProgram.h is deprecated in Arduino 1.0. It has been replaced by Arduino.h. Arduino libraries need to support both through #defines on the ARDUINO constant as described here. You need to define ARDUINO for the compiler as well in your main project, which you would do under Project Settings => AVR Compiler => Symbols and Project Settings => AVR C++ Compiler => Symbols respectively. You're going to want add a new Define Syms (-D) named ARDUINO with value 100 in both places I believe (ARDUINO=100).
Edit 2 I also had to explicitly include Arduino.h at the top of my blink.cpp source file (where setup and loop are defined), not sure how to do avoid compiler errors without it.
Edit 3 If you need to use Arduino Libraries, then you need to put the cpp and h files from the Arduino Library root folder into the arduinolib source folder, and any cpp and h files from the Arduino Library utility folder in an arduinolib/utility folder and include both arduinolib and arduinolib/utility in the project directory include paths (ala Project Settings => C/C++ Build => Settings => Tool Settings => AVR Compiler => Directories and Project Settings => C/C++ Build => Settings => Tool Settings => AVR C++ Compiler => Directories). You should only include those libraries in this folder that you actually use or the image will be bloated, presumably by way of each library's global variable declarations. A better way to go is probably to have separate static library projects for each Arduino library you want to use and place a project dependency on them from your main project, but that's a bit more work (could pay off in the long run though).