Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
GHC
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Iterations
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alex D
GHC
Commits
11e3da87
Commit
11e3da87
authored
May 14, 2009
by
Simon Marlow
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
main repeated 'make maintainer-clean' not fail
parent
cd12c32d
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
50 additions
and
43 deletions
+50
-43
Makefile
Makefile
+11
-6
boot
boot
+0
-37
boot-pkgs
boot-pkgs
+39
-0
No files found.
Makefile
View file @
11e3da87
...
...
@@ -43,13 +43,19 @@ endif
include
mk/custom-settings.mk
# If the package ghc.mk files are missing, generate them. This means that
# repeating 'make maintainer-clean' works.
PACKAGE_MK
=
libraries/base/ghc.mk
$(PACKAGE_MK)
:
sh boot-pkgs
# No need to update makefiles for these targets:
REALGOALS
=
$(
filter-out
framework-pkg clean clean_% distclean maintainer-clean show,
$(MAKECMDGOALS)
)
# NB. not the same as saying '%: ...', which doesn't do the right thing:
# it does nothing if we specify a target that already exists.
.PHONY
:
$(REALGOALS)
$(REALGOALS) all
:
$(REALGOALS) all
:
$(PACKAGE_MK)
@
echo
"===--- updating makefiles phase 0"
$(MAKE)
-r
--no-print-directory
-f
ghc.mk
phase
=
0 just-makefiles
@
echo
"===--- updating makefiles phase 1"
...
...
@@ -61,19 +67,19 @@ $(REALGOALS) all:
@
echo
"===--- finished updating makefiles"
$(MAKE)
-r
--no-print-directory
-f
ghc.mk
$@
binary-dist
:
binary-dist
:
$(PACKAGE_MK)
rm
-f
bindist-list
$(MAKE)
-r
--no-print-directory
-f
ghc.mk bindist
BINDIST
=
YES
$(MAKE)
-r
--no-print-directory
-f
ghc.mk binary-dist
clean distclean maintainer-clean
:
clean distclean maintainer-clean
:
$(PACKAGE_MK)
$(MAKE)
-r
--no-print-directory
-f
ghc.mk
$@
test
!
-d
testsuite
||
$(MAKE)
-C
testsuite
$@
$(filter clean_%, $(MAKECMDGOALS))
:
clean_% :
$(filter clean_%, $(MAKECMDGOALS))
:
clean_% :
$(PACKAGE_MK)
$(MAKE)
-r
--no-print-directory
-f
ghc.mk
$@
show
:
show
:
$(PACKAGE_MK)
$(MAKE)
-r
--no-print-directory
-f
ghc.mk
$@
ifeq
"$(darwin_TARGET_OS)" "1"
...
...
@@ -86,4 +92,3 @@ endif
.NOTPARALLEL
:
endif
boot
View file @
11e3da87
...
...
@@ -30,40 +30,3 @@ do
chmod
+x
$f
fi
done
libraries
=
for
f
in
libraries/
*
;
do
pkgs
=
$f
/ghc-packages
if
test
-f
$pkgs
;
then
for
p
in
`
cat
$pkgs
`
;
do
libraries
=
"
$libraries
$f
/
$p
"
done
else
libraries
=
"
$libraries
$f
"
fi
done
for
f
in
$libraries
;
do
dir
=
`
basename
$f
`
cabals
=
`
echo
$f
/
*
.cabal
`
if
test
-f
$cabals
;
then
echo
"Creating
$f
/ghc.mk"
rm
-f
$f
/ghc.mk
pkg
=
`
echo
"
$cabals
"
|
sed
-e
's#.*/##'
-e
's#\.cabal$##'
`
if
test
-f
$f
/ghc-stage
;
then
stage
=
`
cat
$f
/ghc-stage
`
else
stage
=
1
fi
top
=
`
echo
$f
|
sed
's#[^/]\+#..#g'
`
echo
"
${
f
}
_PACKAGE =
${
pkg
}
"
>>
$f
/ghc.mk
echo
"
${
f
}
_dist-install_GROUP = libraries"
>>
$f
/ghc.mk
echo
"
\$
(eval
\$
(call build-package,
${
f
}
,dist-install,
${
stage
}
))"
>>
$f
/ghc.mk
rm
-f
$f
/GNUmakefile
echo
"Creating
$f
/GNUmakefile"
echo
"dir =
${
f
}
"
>>
$f
/GNUmakefile
echo
"TOP =
${
top
}
"
>>
$f
/GNUmakefile
echo
"include
\$
(TOP)/mk/sub-makefile.mk"
>>
$f
/GNUmakefile
fi
done
boot-pkgs
0 → 100644
View file @
11e3da87
#! /bin/sh
set
-e
libraries
=
for
f
in
libraries/
*
;
do
pkgs
=
$f
/ghc-packages
if
test
-f
$pkgs
;
then
for
p
in
`
cat
$pkgs
`
;
do
libraries
=
"
$libraries
$f
/
$p
"
done
else
libraries
=
"
$libraries
$f
"
fi
done
for
f
in
$libraries
;
do
dir
=
`
basename
$f
`
cabals
=
`
echo
$f
/
*
.cabal
`
if
test
-f
$cabals
;
then
echo
"Creating
$f
/ghc.mk"
rm
-f
$f
/ghc.mk
pkg
=
`
echo
"
$cabals
"
|
sed
-e
's#.*/##'
-e
's#\.cabal$##'
`
if
test
-f
$f
/ghc-stage
;
then
stage
=
`
cat
$f
/ghc-stage
`
else
stage
=
1
fi
top
=
`
echo
$f
|
sed
's#[^/]\+#..#g'
`
echo
"
${
f
}
_PACKAGE =
${
pkg
}
"
>>
$f
/ghc.mk
echo
"
${
f
}
_dist-install_GROUP = libraries"
>>
$f
/ghc.mk
echo
"
\$
(eval
\$
(call build-package,
${
f
}
,dist-install,
${
stage
}
))"
>>
$f
/ghc.mk
rm
-f
$f
/GNUmakefile
echo
"Creating
$f
/GNUmakefile"
echo
"dir =
${
f
}
"
>>
$f
/GNUmakefile
echo
"TOP =
${
top
}
"
>>
$f
/GNUmakefile
echo
"include
\$
(TOP)/mk/sub-makefile.mk"
>>
$f
/GNUmakefile
fi
done
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment