| 1 | # To use this file, first run "makemake" and then run "make". |
|---|
| 2 | # (makemake is part of the JX distribution) |
|---|
| 3 | |
|---|
| 4 | # Useful directories |
|---|
| 5 | |
|---|
| 6 | JX_ROOT := .. |
|---|
| 7 | |
|---|
| 8 | DIR01 := ./01-HelloWorld |
|---|
| 9 | DIR02 := ./02-MenuHello |
|---|
| 10 | DIR03 := ./03-DialogHello |
|---|
| 11 | DIR04 := ./04-Widget |
|---|
| 12 | DIR05 := ./05-Scrolling |
|---|
| 13 | DIR06 := ./06-DragPainter |
|---|
| 14 | DIR07 := ./07-Printing |
|---|
| 15 | DIR08 := ./08-SimpleTable |
|---|
| 16 | DIR09 := ./09-DataTable |
|---|
| 17 | DIR10 := ./10-SelectionTable |
|---|
| 18 | DIR11 := ./11-EditTable |
|---|
| 19 | DIR12 := ./12-Clipboard |
|---|
| 20 | DIR13 := ./13-Undo |
|---|
| 21 | DIR14 := ./14-DragAndDrop |
|---|
| 22 | |
|---|
| 23 | JCOREDIR := ${JX_ROOT}/include/jcore |
|---|
| 24 | JXDIR := ${JX_ROOT}/include/jx |
|---|
| 25 | |
|---|
| 26 | JLIBDIR := ${JX_ROOT}/lib |
|---|
| 27 | JCORELIBDIR := ${JX_ROOT}/libjcore |
|---|
| 28 | JXLIBDIR := ${JX_ROOT}/libjx |
|---|
| 29 | |
|---|
| 30 | # Directories to search for header files |
|---|
| 31 | |
|---|
| 32 | SEARCHDIRS := -I${DIR01} -I${DIR02} -I${DIR03} -I${DIR04} \ |
|---|
| 33 | -I${DIR05} -I${DIR06} -I${DIR07} -I${DIR08} \ |
|---|
| 34 | -I${DIR09} -I${DIR10} -I${DIR11} -I${DIR12} \ |
|---|
| 35 | -I${DIR13} -I${DIR14} \ |
|---|
| 36 | -I${JCOREDIR} \ |
|---|
| 37 | -I${JXDIR} |
|---|
| 38 | |
|---|
| 39 | # other constants |
|---|
| 40 | |
|---|
| 41 | TUTORIAL_STRING_FILES := */strings |
|---|
| 42 | |
|---|
| 43 | # makemake variables |
|---|
| 44 | |
|---|
| 45 | J_STRING_FILES := ${TUTORIAL_STRING_FILES} |
|---|
| 46 | |
|---|
| 47 | include ${JX_ROOT}/include/make/jx_constants |
|---|
| 48 | include ${JX_ROOT}/include/make/jx_config |
|---|
| 49 | |
|---|
| 50 | DEPENDFLAGS := ${J_COMPILER_DEPEND_FLAGS} \ |
|---|
| 51 | -g ${SEARCHDIRS} |
|---|
| 52 | |
|---|
| 53 | TOUCHPATHS := ${JCORELIBDIR} ${JXLIBDIR} |
|---|
| 54 | |
|---|
| 55 | # make variables |
|---|
| 56 | |
|---|
| 57 | LOADLIBES := ${J_STD_LIBS} |
|---|
| 58 | LDFLAGS := |
|---|
| 59 | |
|---|
| 60 | ##### |
|---|
| 61 | |
|---|
| 62 | .PHONY : default |
|---|
| 63 | default: libs strings all |
|---|
| 64 | |
|---|
| 65 | .PHONY : Makefiles |
|---|
| 66 | Makefiles: |
|---|
| 67 | |
|---|
| 68 | # |
|---|
| 69 | # string data |
|---|
| 70 | # |
|---|
| 71 | |
|---|
| 72 | .PHONY : strings |
|---|
| 73 | strings: |
|---|
| 74 | compile_jstrings ${J_STRING_FILES} \ |
|---|
| 75 | --code kTutorialStringData TutorialStringData.h |
|---|
| 76 | |
|---|
| 77 | # |
|---|
| 78 | # required libraries |
|---|
| 79 | # |
|---|
| 80 | |
|---|
| 81 | .PHONY : libs |
|---|
| 82 | libs: |
|---|
| 83 | @for path in ${TOUCHPATHS}; do ( if cd $$path; then ${MAKE}; fi ) done |
|---|
| 84 | |
|---|
| 85 | # |
|---|
| 86 | # JX source distribution (DISTR_TAR_FILE) |
|---|
| 87 | # |
|---|
| 88 | |
|---|
| 89 | SRC_FILE_DIR := ${JX}/tutorial |
|---|
| 90 | |
|---|
| 91 | .PHONY : jxsource |
|---|
| 92 | jxsource: |
|---|
| 93 | @cd ${J_DISTR_TAR_DIR}; \ |
|---|
| 94 | tar -rf ${DISTR_TAR_FILE} ${filter-out %.o %~ Makefile, \ |
|---|
| 95 | ${shell cd ${J_DISTR_TAR_DIR}; echo \ |
|---|
| 96 | ${addprefix ${SRC_FILE_DIR}/, README Make.*} \ |
|---|
| 97 | ${SRC_FILE_DIR}/*/* }} |
|---|