install.inc 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. #
  2. # install/uninstall Makefile
  3. #
  4. # These recipes are intended primarily for use with the unix and darwin
  5. # platforms, but may be useful for other platforms. Include this in any arch
  6. # Makefile.in to enable 'make install' and 'make uninstall' for that platform.
  7. #
  8. # An 'install-arch' and 'uninstall-arch' need to be provided after including
  9. # this file to handle platform-specific install files (if any).
  10. #
  11. .PHONY: install install-arch uninstall uninstall-arch install-check
  12. ifeq (${USER},root)
  13. install = install -o root
  14. else
  15. install = install
  16. endif
  17. #
  18. # Check to make sure 'make install' and 'make uninstall' aren't accidentally
  19. # used for platforms/subplatforms that don't support it.
  20. #
  21. ERROR_PLATFORM = Attempted 'make install' or 'make uninstall' for invalid platform!
  22. install-check:
  23. @echo Checking ability to install/uninstall...
  24. @echo GAMESDIR: ${GAMESDIR}
  25. ifeq (${GAMESDIR},.)
  26. $(error ${ERROR_PLATFORM} (GAMESDIR))
  27. endif
  28. @echo SYSCONFDIR: ${SYSCONFDIR}
  29. ifeq (${SYSCONFDIR},.)
  30. $(error ${ERROR_PLATFORM} (SYSCONFDIR))
  31. endif
  32. @echo SHAREDIR: ${SHAREDIR}
  33. ifeq (${SHAREDIR},.)
  34. $(error ${ERROR_PLATFORM} (SHAREDIR))
  35. endif
  36. ifneq (${BUILD_MODULAR},)
  37. @echo LIBDIR: ${LIBDIR}
  38. ifeq (${LIBDIR},.)
  39. $(error ${ERROR_PLATFORM} (LIBDIR, modular enabled))
  40. endif
  41. endif
  42. ifneq (${BUILD_UTILS},)
  43. @echo BINDIR: ${BINDIR}
  44. ifeq (${BINDIR},.)
  45. $(error ${ERROR_PLATFORM} (BINDIR, utils enabled))
  46. endif
  47. endif
  48. #
  49. # Install the current build to the system.
  50. #
  51. install: install-check install-arch
  52. @echo Installing...
  53. @${install} -m 0755 -d \
  54. ${DESTDIR}${SYSCONFDIR} \
  55. ${DESTDIR}${SHAREDIR} \
  56. ${DESTDIR}${SHAREDIR}/doc \
  57. ${DESTDIR}${SHAREDIR}/doc/megazeux \
  58. ${DESTDIR}${SHAREDIR}/megazeux \
  59. ${DESTDIR}${SHAREDIR}/megazeux/assets && \
  60. ${install} -m 0644 assets/default.chr assets/edit.chr \
  61. assets/smzx.pal ${DESTDIR}${SHAREDIR}/megazeux/assets && \
  62. ${install} -m 0644 config.txt ${DESTDIR}${SYSCONFDIR}/megazeux-config
  63. @gzip -c docs/changelog.txt > docs/changelog.txt.gz
  64. @gzip -c9 docs/mzxhelp.html > docs/mzxhelp.html.gz
  65. @${install} -m 0644 \
  66. README.md \
  67. docs/changelog.txt.gz \
  68. docs/mzxhelp.html.gz \
  69. docs/macro.txt \
  70. docs/keycodes.html \
  71. ${DESTDIR}${SHAREDIR}/doc/megazeux/
  72. @${RM} -f docs/changelog.txt.gz
  73. @${RM} -f docs/mzxhelp.html.gz
  74. ifeq (${BUILD_HELPSYS},1)
  75. @${install} -m 0644 assets/help.fil \
  76. ${DESTDIR}${SHAREDIR}/megazeux/assets
  77. endif
  78. ifeq (${BUILD_MODULAR},1)
  79. @${install} -m 0755 -d ${DESTDIR}${LIBDIR} && \
  80. ${install} -m 0755 ${core_target} ${DESTDIR}${LIBDIR} && \
  81. ${install} -m 0755 ${editor_target} ${DESTDIR}${LIBDIR}
  82. endif
  83. ifeq (${BUILD_MZXRUN},1)
  84. @${install} -m 0755 -d ${DESTDIR}${GAMESDIR} && \
  85. ${install} -m 0755 ${mzxrun} ${DESTDIR}${GAMESDIR}/
  86. endif
  87. ifeq (${BUILD_EDITOR},1)
  88. @${install} -m 0755 -d ${DESTDIR}${GAMESDIR} && \
  89. ${install} -m 0755 ${mzx} ${DESTDIR}${GAMESDIR}/ && \
  90. ${install} -m 0644 assets/ascii.chr assets/blank.chr \
  91. assets/smzx.chr ${DESTDIR}${SHAREDIR}/megazeux/assets
  92. endif
  93. ifeq (${BUILD_UTILS},1)
  94. @${install} -m 0755 -d ${DESTDIR}${BINDIR} && \
  95. ${install} -m 0755 ${checkres} ${DESTDIR}${BINDIR}/ && \
  96. ${install} -m 0755 ${downver} ${DESTDIR}${BINDIR}/ && \
  97. ${install} -m 0755 ${hlp2txt} ${DESTDIR}${BINDIR}/ && \
  98. ${install} -m 0755 ${txt2hlp} ${DESTDIR}${BINDIR}/ && \
  99. ${install} -m 0755 ${png2smzx} ${DESTDIR}${BINDIR}/ && \
  100. ${install} -m 0755 ${ccv} ${DESTDIR}${BINDIR}/
  101. endif
  102. ifeq (${BUILD_RENDER_GL_PROGRAM},1)
  103. @${install} -m 0755 -d \
  104. ${DESTDIR}${SHAREDIR}/megazeux/assets/glsl && \
  105. ${install} -m 0644 assets/glsl/cursor.frag \
  106. assets/glsl/cursor.vert \
  107. assets/glsl/mouse.frag \
  108. assets/glsl/mouse.vert \
  109. assets/glsl/README.md \
  110. assets/glsl/scaler.vert \
  111. assets/glsl/tilemap.frag \
  112. assets/glsl/tilemap.vert \
  113. assets/glsl/tilemap.smzx.frag \
  114. ${DESTDIR}${SHAREDIR}/megazeux/assets/glsl/
  115. endif
  116. ifeq (${BUILD_RENDER_GL_PROGRAM},1)
  117. @${install} -m 0755 -d \
  118. ${DESTDIR}${SHAREDIR}/megazeux/assets/glsl/scalers && \
  119. ${install} -m 0644 \
  120. assets/glsl/scalers/crt-wave.frag \
  121. assets/glsl/scalers/crt.frag \
  122. assets/glsl/scalers/emboss.frag \
  123. assets/glsl/scalers/epx.frag \
  124. assets/glsl/scalers/greyscale.frag \
  125. assets/glsl/scalers/hqscale.frag \
  126. assets/glsl/scalers/hqscale.vert \
  127. assets/glsl/scalers/nearest.frag \
  128. assets/glsl/scalers/semisoft.frag \
  129. assets/glsl/scalers/sepia.frag \
  130. assets/glsl/scalers/simple.frag \
  131. ${DESTDIR}${SHAREDIR}/megazeux/assets/glsl/scalers/
  132. endif
  133. ifeq (${BUILD_GAMECONTROLLERDB},1)
  134. @${install} -m 0644 \
  135. assets/gamecontrollerdb.txt \
  136. assets/gamecontrollerdb.LICENSE \
  137. ${DESTDIR}${SHAREDIR}/megazeux/assets/
  138. endif
  139. @echo Done.
  140. #
  141. # Uninstall a build from the system.
  142. #
  143. uninstall: install-check uninstall-arch
  144. @echo Uninstalling...
  145. ${RM} -rf \
  146. ${DESTDIR}${SHAREDIR}/megazeux \
  147. ${DESTDIR}${SHAREDIR}/megazeux/assets \
  148. ${DESTDIR}${SHAREDIR}/doc/megazeux \
  149. ${DESTDIR}${SYSCONFDIR}/megazeux-config
  150. ifeq (${BUILD_MODULAR},1)
  151. @${RM} -f \
  152. ${DESTDIR}${LIBDIR}/${core_target} \
  153. ${DESTDIR}${LIBDIR}/${editor_target}
  154. endif
  155. ifeq (${BUILD_MZXRUN},1)
  156. @${RM} -f \
  157. ${DESTDIR}${GAMESDIR}/${mzxrun}
  158. endif
  159. ifeq (${BUILD_EDITOR},1)
  160. @${RM} -f \
  161. ${DESTDIR}${GAMESDIR}/${mzx}
  162. endif
  163. ifeq (${BUILD_UTILS},1)
  164. @${RM} -f \
  165. ${DESTDIR}${BINDIR}/checkres \
  166. ${DESTDIR}${BINDIR}/downver \
  167. ${DESTDIR}${BINDIR}/hlp2txt \
  168. ${DESTDIR}${BINDIR}/txt2hlp \
  169. ${DESTDIR}${BINDIR}/ccv
  170. endif
  171. @echo Done.