119 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			119 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| 
								 | 
							
								TESTS := stdc stdc++ python2 python3 javascript
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								check: $(TESTS)
							 | 
						||
| 
								 | 
							
									@set -e; for fn in $(TESTS); do \
							 | 
						||
| 
								 | 
							
										./$$fn; \
							 | 
						||
| 
								 | 
							
										echo $$fn: OK; \
							 | 
						||
| 
								 | 
							
									done
							 | 
						||
| 
								 | 
							
									@echo Done.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								GEN := ../tools/keymap-gen
							 | 
						||
| 
								 | 
							
								DATA := ../data/keymaps.csv
							 | 
						||
| 
								 | 
							
								SOURCES := $(GEN) $(DATA)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.DELETE_ON_ERROR:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								stdc: stdc.c osx2win32.h osx2win32_name.h \
							 | 
						||
| 
								 | 
							
								             osx2xkb.h osx2xkb_name.h \
							 | 
						||
| 
								 | 
							
								             html2win32.h html2win32_name.h \
							 | 
						||
| 
								 | 
							
								             osx.h osx_name.h
							 | 
						||
| 
								 | 
							
									$(CC) -Wall -o $@ $^
							 | 
						||
| 
								 | 
							
								osx2win32.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc code-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2win32_name.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc name-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2xkb.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc code-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								osx2xkb_name.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc name-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								html2win32.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc code-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								html2win32_name.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc name-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								osx.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc code-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								osx_name.h: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc name-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								stdc++: stdc++.cc osx2win32.hh osx2win32_name.hh \
							 | 
						||
| 
								 | 
							
								             osx2xkb.hh osx2xkb_name.hh \
							 | 
						||
| 
								 | 
							
								             html2win32.hh html2win32_name.hh \
							 | 
						||
| 
								 | 
							
								             osx.hh osx_name.hh
							 | 
						||
| 
								 | 
							
									$(CXX) -Wall -std=c++11 -o $@ $^
							 | 
						||
| 
								 | 
							
								osx2win32.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ code-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2win32_name.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ name-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2xkb.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ code-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								osx2xkb_name.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ name-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								html2win32.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ code-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								html2win32_name.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ name-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								osx.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ code-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								osx_name.hh: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang stdc++ name-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								python2: osx2win32.py osx2win32_name.py \
							 | 
						||
| 
								 | 
							
								         osx2xkb.py osx2xkb_name.py \
							 | 
						||
| 
								 | 
							
								         html2win32.py html2win32_name.py \
							 | 
						||
| 
								 | 
							
								         osx.py osx_name.py
							 | 
						||
| 
								 | 
							
								osx2win32.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 code-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2win32_name.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 name-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2xkb.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 code-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								osx2xkb_name.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 name-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								html2win32.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 code-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								html2win32_name.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 name-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								osx.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 code-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								osx_name.py: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang python2 name-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								javascript: node_modules/babel-core \
							 | 
						||
| 
								 | 
							
								            node_modules/babel-plugin-transform-es2015-modules-commonjs \
							 | 
						||
| 
								 | 
							
								            osx2win32.js osx2win32_name.js \
							 | 
						||
| 
								 | 
							
								            osx2xkb.js osx2xkb_name.js \
							 | 
						||
| 
								 | 
							
								            html2win32.js html2win32_name.js \
							 | 
						||
| 
								 | 
							
								            osx.js osx_name.js
							 | 
						||
| 
								 | 
							
								node_modules/babel-core:
							 | 
						||
| 
								 | 
							
									npm install babel-core
							 | 
						||
| 
								 | 
							
								node_modules/babel-plugin-transform-es2015-modules-commonjs:
							 | 
						||
| 
								 | 
							
									npm install babel-plugin-transform-es2015-modules-commonjs
							 | 
						||
| 
								 | 
							
								osx2win32.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js code-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2win32_name.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js name-map $(DATA) osx win32 > $@
							 | 
						||
| 
								 | 
							
								osx2xkb.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js code-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								osx2xkb_name.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js name-map $(DATA) osx xkb > $@
							 | 
						||
| 
								 | 
							
								html2win32.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js code-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								html2win32_name.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js name-map $(DATA) html win32 > $@
							 | 
						||
| 
								 | 
							
								osx.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js code-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								osx_name.js: $(SOURCES)
							 | 
						||
| 
								 | 
							
									$(GEN) --lang js name-table $(DATA) osx > $@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								clean:
							 | 
						||
| 
								 | 
							
									rm -rf node_modules
							 | 
						||
| 
								 | 
							
									rm -f osx2win32.*
							 | 
						||
| 
								 | 
							
									rm -f osx2win32_name.*
							 | 
						||
| 
								 | 
							
									rm -f osx2xkb.*
							 | 
						||
| 
								 | 
							
									rm -f osx2xkb_name.*
							 | 
						||
| 
								 | 
							
									rm -f html2win32.*
							 | 
						||
| 
								 | 
							
									rm -f html2win32_name.*
							 | 
						||
| 
								 | 
							
									rm -f osx.*
							 | 
						||
| 
								 | 
							
									rm -f osx_name.*
							 | 
						||
| 
								 | 
							
									rm -f stdc stdc++
							 |