Set RELEASE=NO

Signed-off-by: Austin Seipp <austin@well-typed.com>
Fix linked list manipulation code (buggy on consecutive deletion)

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
(cherry picked from commit e3938f3adac0093b23694fd347774244ce121478)
--with-gcc overrides CC_STAGE0 when not cross-compiling (#8498)

(cherry picked from commit 6189c7674fc5c735db1a446d0b222369a3767369)
Don't perform permission checks for scripts named with -ghci-script (#6017)

The user explicitly requested this script on the command-line, so it's
unnecessary to require that the script is also owned by the user.
Also, it is currently impossible to make a GHCi wrapper that invokes a
custom script without first making a copy of the script to circumvent
the permissions check, which seems wrong.

(cherry picked from commit a6f2c852d49313fa8acea2deb3741ab86c6ef995)
Include EXTRA_LD_OPTS (amongst other things) when linking programs

One problem was that we weren't including $1_$2_DIST_LD_OPTS when
linking a program, which looks to be accidental: it was being defined
but not used anywhere.  This meant that setting $1_$2_EXTRA_LD_OPTS,
for example, had no effect.

This commit straightens out the handling of LD_OPTS to be consistent
with the way we handle CC_OPTS and HC_OPTS.

(cherry picked from commit 975e9cb8e7744a0750bb6c8763f628e05672643e)
Pass custom CC and LD opts to Cabal when configuring a package

Cabal compiles a program to check for the existence of foreign
libraries, so it needs to know our custom options, if any.

(cherry picked from commit e7f26cd3e7e9eb92e3eb3457730e635747b43050)
Include SRC_CC_OPTS and SRC_LD_OPTS when compiling ghc-cabal

(cherry picked from commit d011cdefca7aa66cbcf71c941f38a4e6dd4c5579)
Use LDFLAGS when compiling ghc-pwd

(cherry picked from commit 2aa78106ae8f3c9b71d7b85c2a8a5558c4c35fb4)
Remove debugging output

(cherry picked from commit 4c8edfd2c722504baaa6896d194fd3a8c3f9b652)
Include LD_OPTS when building the RTS shared libs

(cherry picked from commit ec3e949e29990c054850f621e14a9d77e3197aee)
Don't preprocess .s files

One important reason is that gcc 4.8.1 sometimes crashes:

  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60436

Another reason is that preprocessing assembly files unnecessarily
slows down compilation.

(cherry picked from commit 396648eebaa1144d4d1f5326db716e8130f73732)