Skip to content
This repository has been archived by the owner on Oct 12, 2022. It is now read-only.

Commit

Permalink
Merge pull request #374 from andralex/master
Browse files Browse the repository at this point in the history
Fix a few issues with posix.mak
  • Loading branch information
alexrp committed Jan 4, 2013
2 parents 3ad3f7c + bf0975e commit 0dd9f73
Showing 1 changed file with 18 additions and 36 deletions.
54 changes: 18 additions & 36 deletions posix.mak
Expand Up @@ -52,11 +52,9 @@ DRUNTIME=lib/lib$(DRUNTIME_BASE).a

DOCFMT=-version=CoreDdoc

target : copydir import copy $(DRUNTIME) doc

MANIFEST= \
LICENSE_1_0.txt \
README.txt \
LICENSE \
README \
posix.mak \
win32.mak \
win64.mak \
Expand Down Expand Up @@ -216,7 +214,6 @@ MANIFEST= \
src/rt/invariant_.d \
src/rt/lifetime.d \
src/rt/llmath.d \
src/rt/mars.h \
src/rt/memory.d \
src/rt/memory_osx.d \
src/rt/memset.d \
Expand Down Expand Up @@ -410,7 +407,7 @@ SRC_D_MODULES = \

# NOTE: trace.d and cover.d are not necessary for a successful build
# as both are used for debugging features (profiling and coverage)
# NOTE: a pre-compiled minit.obj has been provided in dmd for Win32 and
# NOTE: a pre-compiled minit.obj has been provided in dmd for Win32 and
# minit.asm is not used by dmd for Linux

OBJS= $(OBJDIR)/errno_c.o $(OBJDIR)/complex.o
Expand Down Expand Up @@ -552,15 +549,9 @@ COPY=\

SRCS=$(addprefix src/,$(addsuffix .d,$(SRC_D_MODULES)))

COPYDIRS=\
$(IMPDIR)/core/stdc \
$(IMPDIR)/core/sys/freebsd/sys \
$(IMPDIR)/core/sys/osx/mach \
$(IMPDIR)/core/sys/posix/arpa \
$(IMPDIR)/core/sys/posix/net \
$(IMPDIR)/core/sys/posix/netinet \
$(IMPDIR)/core/sys/posix/sys \
$(IMPDIR)/core/sys/windows \
######################## All of'em ##############################

target : import copy $(DRUNTIME) doc

######################## Doc .html file generation ##############################

Expand All @@ -569,7 +560,7 @@ doc: $(DOCS)
$(DOCDIR)/object.html : src/object_.d
$(DMD) $(DDOCFLAGS) -Df$@ $(DOCFMT) $<

$(DOCDIR)/core_%.html : $(IMPDIR)/core/%.di
$(DOCDIR)/core_%.html : src/core/%.di
$(DMD) $(DDOCFLAGS) -Df$@ $(DOCFMT) $<

$(DOCDIR)/core_%.html : src/core/%.d
Expand All @@ -583,43 +574,34 @@ $(DOCDIR)/core_sync_%.html : src/core/sync/%.d
import: $(IMPORTS)

$(IMPDIR)/core/sync/%.di : src/core/sync/%.d
@mkdir -p `dirname $@`
$(DMD) -m$(MODEL) -c -o- -Isrc -Iimport -Hf$@ $<

######################## Header .di file copy ##############################

copydir:
-mkdir -p $(IMPDIR)/core/stdc
-mkdir -p $(IMPDIR)/core/sys/windows
-mkdir -p $(IMPDIR)/core/sys/posix/arpa
-mkdir -p $(IMPDIR)/core/sys/posix/sys
-mkdir -p $(IMPDIR)/core/sys/posix/net
-mkdir -p $(IMPDIR)/core/sys/posix/netinet
-mkdir -p $(IMPDIR)/core/sys/osx/mach
-mkdir -p $(IMPDIR)/core/sys/freebsd/sys
-mkdir -p $(IMPDIR)/core/sys/linux/sys
-mkdir -p $(IMPDIR)/etc/linux

copy: $(COPY)

$(IMPDIR)/%.di : src/%.di
@mkdir -p `dirname $@`
cp $< $@

$(IMPDIR)/%.d : src/%.d
@mkdir -p `dirname $@`
cp $< $@

################### C/ASM Targets ############################

$(OBJDIR)/%.o : src/rt/%.c
@mkdir -p $(OBJDIR)
@mkdir -p `dirname $@`
$(CC) -c $(CFLAGS) $< -o$@

$(OBJDIR)/errno_c.o : src/core/stdc/errno.c
@mkdir -p $(OBJDIR)
@mkdir -p `dirname $@`
$(CC) -c $(CFLAGS) $< -o$@

################### Library generation #########################

$(DRUNTIME): $(OBJS) $(SRCS) win32.mak
$(DRUNTIME): $(OBJS) $(SRCS)
$(DMD) -lib -of$(DRUNTIME) -Xfdruntime.json $(DFLAGS) $(SRCS) $(OBJS)

unittest : $(addprefix $(OBJDIR)/,$(SRC_D_MODULES)) $(DRUNTIME) $(OBJDIR)/emptymain.d
Expand Down Expand Up @@ -652,14 +634,14 @@ detab:
detab $(MANIFEST)
tolf $(MANIFEST)

zip:
zip druntime.zip $(MANIFEST) $(DOCS) $(IMPORTS) minit.o
zip: druntime.zip

druntime.zip:
zip $@ $(MANIFEST) $(DOCS) $(IMPORTS) minit.o
druntime.zip: $(MANIFEST) $(DOCS) $(IMPORTS)
rm -rf $@
zip $@ $^

install: druntime.zip
unzip -o druntime.zip -d /dmd2/src/druntime

clean:
rm -rf obj lib $(IMPDIR) $(DOCDIR)
rm -rf obj lib $(IMPDIR) $(DOCDIR) druntime.zip

0 comments on commit 0dd9f73

Please sign in to comment.