Skip to content

Commit

Permalink
Update infrastructure to build usbdrvce.
Browse files Browse the repository at this point in the history
  • Loading branch information
jacobly0 committed Oct 28, 2018
1 parent 2b4c9c3 commit 51d18ec
Show file tree
Hide file tree
Showing 4 changed files with 87 additions and 6 deletions.
1 change: 1 addition & 0 deletions CMakeLists.txt
Expand Up @@ -11,6 +11,7 @@ include_directories(${CMAKE_SOURCE_DIR}/src/ce
${CMAKE_SOURCE_DIR}/src/fileioc
${CMAKE_SOURCE_DIR}/src/graphx
${CMAKE_SOURCE_DIR}/src/keypadc
${CMAKE_SOURCE_DIR}/src/usbdrvce
${CMAKE_SOURCE_DIR}/src/std
${CMAKE_SOURCE_DIR}/src/sub/compat)

Expand Down
22 changes: 16 additions & 6 deletions makefile
Expand Up @@ -99,7 +99,7 @@ FILEIO_FILES := $(wildcard src/std/fileio/*.src) $(patsubst src/std/fileio/%.c,s
all: fasmg $(CONVHEX) $(CONVPNG) $(CONVTILE) graphx fileioc keypadc libload ce std startup
@echo Toolchain built.

clean: clean-graphx clean-fileioc clean-keypadc clean-ce clean-std clean-libload clean-startup
clean: clean-graphx clean-fileioc clean-keypadc clean-usbdrvce clean-ce clean-std clean-libload clean-startup
$(MAKE) -C $(FASMGDIR) clean
$(MAKE) -C $(CONVHEXDIR) clean
$(MAKE) -C $(CONVPNGDIR) clean
Expand Down Expand Up @@ -176,6 +176,15 @@ clean-keypadc:
$(MAKE) -C $(KEYPADCDIR) clean
#----------------------------

#----------------------------
# usbdrvce rules
#----------------------------
usbdrvce: $(FASMG)
$(MAKE) -C $(USBDRVCEDIR) FASMG=$(FASMG) BIN=$(BIN)
clean-usbdrvce:
$(MAKE) -C $(USBDRVCEDIR) clean
#----------------------------

#----------------------------
# libload rules
#----------------------------
Expand Down Expand Up @@ -218,6 +227,7 @@ install: $(DIRS) chmod all linker_script
$(MAKE) -C $(GRAPHXDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
$(MAKE) -C $(KEYPADCDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
$(MAKE) -C $(FILEIOCDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
$(MAKE) -C $(USBDRVCEDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
$(MAKE) -C $(LIBLOADDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
$(MAKE) -C $(CEDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
$(MAKE) -C $(STDDIR) install PREFIX=$(PREFIX) DESTDIR=$(DESTDIR)
Expand Down Expand Up @@ -251,9 +261,10 @@ release: install
#----------------------------
dist-libs: release-libs
release-libs:
$(CONVHEX) -g 4 $(call NATIVEPATH,src/graphx/graphx.8xv) \
$(CONVHEX) -g 5 $(call NATIVEPATH,src/graphx/graphx.8xv) \
$(call NATIVEPATH,src/fileioc/fileioc.8xv) \
$(call NATIVEPATH,src/keypadc/keypadc.8xv) \
$(call NATIVEPATH,src/libload/usbdrvce.8xv) \
$(call NATIVEPATH,src/libload/libload.8xv) \
$(call NATIVEPATH,clibs.8xg)
#----------------------------
Expand Down Expand Up @@ -297,20 +308,19 @@ help:
@echo graphx
@echo fileioc
@echo keypadc
@echo usbdrvce
@echo clean
@echo clean-ce
@echo clean-asm
@echo clean-std
@echo clean-graphx
@echo clean-fileioc
@echo clean-keypadc
@echo doxygen
@echo clean-usbdrvce
@echo install
@echo uninstall
@echo release
@echo release-libs
@echo help

#----------------------------
.PHONY: clean-libload libload release-libs clibraries doxygen chmod all clean graphx clean-graphx fileioc clean-fileioc keypadc clean-keypadc install uninstall help release fasmg

.PHONY: clean-libload libload release-libs clibraries doxygen chmod all clean graphx clean-graphx fileioc clean-fileioc keypadc clean-keypadc usbdrvce clean-usbdrvce install uninstall help release fasmg
50 changes: 50 additions & 0 deletions src/usbdrvce/makefile
@@ -0,0 +1,50 @@
#----------------------------
# Makefile
#----------------------------

# set NAME to the name of the library
NAME :=usbdrvce

# defult locations
FASMG ?=fasmg

# common/os specific things
ifeq ($(OS),Windows_NT)
SHELL =cmd.exe
NATIVEPATH =$(subst /,\,$(1))
RM =del /f 2>nul
MKDIR =mkdir
CP =xcopy /y
PREFIX ?=C:
else
NATIVEPATH =$(subst \,/,$(1))
RM =rm -f
MKDIR =mkdir -p
CP =cp
PREFIX ?=$(HOME)
endif

SRC +=$(NAME).asm
DEV ?=$(call NATIVEPATH,$(PREFIX)/CEdev)
BIN ?=$(call NATIVEPATH,$(DEV)/bin)

INSTALLLOC :=$(call NATIVEPATH,$(DESTDIR)$(DEV))
H_LOC :=$(call NATIVEPATH,$(INSTALLLOC)/include)
I_LOC :=$(call NATIVEPATH,$(INSTALLLOC)/lib/libload)

LIB_8XV :=$(NAME).8xv
LIB_H :=$(NAME).h

all: $(LIB_8XV)

$(LIB_8XV): $(SRC)
$(FASMG) $< $@

clean:
$(RM) $(LIB_8XV)

install:
$(CP) $(LIB_H) $(H_LOC)
$(CP) $(SRC) $(I_LOC)

.PHONY: all clean install
20 changes: 20 additions & 0 deletions src/usbdrvce/usbdrvce.asm
@@ -0,0 +1,20 @@
;-------------------------------------------------------------------------------
include '../include/library.inc'
;-------------------------------------------------------------------------------

library 'USBDRVCE', 0

;-------------------------------------------------------------------------------
; no dependencies
;-------------------------------------------------------------------------------

;-------------------------------------------------------------------------------
; v0 functions (subject to change!)
;-------------------------------------------------------------------------------
export usb_Init
;-------------------------------------------------------------------------------

;-------------------------------------------------------------------------------
usb_Init:
ret
;-------------------------------------------------------------------------------

0 comments on commit 51d18ec

Please sign in to comment.