7 # TEMPORARY VARIABLES.. development use only
8 declare MKFILE
=Makefile
9 declare PREV_PACKAGE
=""
10 declare BUILD_SCRIPTS
=scripts
11 declare TRACKING_DIR
=tracking-dir
13 HEADER
="# This file is automatically generated by gen-makefile.sh
14 # YOU MAY NEED TO EDIT THIS FILE MANUALLY
16 # Generated on `date \"+%F %X %Z\"`"
19 #----------------------------------#
20 __wrt_target
() { # Create target and initialize log file
21 #----------------------------------#
28 @\$(call echo_message, Building)
29 @/bin/bash progress_bar.sh \$@ \$\$PPID &
36 #----------------------------------#
37 __write_build_cmd
() { #
38 #----------------------------------#
41 @source ../envars.conf && ${BUILD_SCRIPTS}/\$@ >logs/\$@ 2>&1
46 #----------------------------------#
48 #----------------------------------#
51 local alsa_ver
=$
(grep "^alsa[[:space:]]" ..
/packages | cut
-f3)
52 local kde_core_ver
=$
(grep "^kde-core[[:space:]]" ..
/packages | cut
-f3)
53 local xorg7_ver
=$
(grep "^xorg7[[:space:]]" ..
/packages | cut
-f3)
55 if [[ -n "$pkg_ver" ]] ; then
58 @rm -f \$(TRACKING_DIR)/${pkg_name#*-?-}-{0..9}* && \\
59 touch \$(TRACKING_DIR)/${pkg_name#*-?-}-${pkg_ver}
65 *-alsa-lib ) #this the unique mandatory package for ALSA support.
68 @rm -f \$(TRACKING_DIR)/alsa-{0..9}* && \\
69 touch \$(TRACKING_DIR)/alsa-${alsa_ver}
76 @rm -f \$(TRACKING_DIR)/kde-core-{0..9}* && \\
77 touch \$(TRACKING_DIR)/kde-core-${kde_core_ver}
81 *-xorg7-driver ) # xtrerm2 and rman are optional
84 @rm -f \$(TRACKING_DIR)/xorg7-{0..9}* && \\
85 touch \$(TRACKING_DIR)/xorg7-${xorg7_ver}
95 echo -e "\n\n "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\
96 echo --------------------------------------------------------------------------------\$(WHITE)
102 #----------------------------#
104 #----------------------------#
108 echo -n "${tab_}${tab_} entry for <$script_name>"
110 #--------------------------------------------------------------------#
111 # >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<< #
112 #--------------------------------------------------------------------#
114 # Drop in the name of the target on a new line, and the previous target
115 # as a dependency. Also call the echo_message function.
116 __wrt_target
"${script_name}" "$PREV_PACKAGE"
119 # Include a touch of the target name so make can check
120 # if it's already been made.
121 __wrt_touch
"${script_name}" "${pkg_ver}"
123 #--------------------------------------------------------------------#
124 # >>>>>>>> END OF Makefile ENTRY <<<<<<<< #
125 #--------------------------------------------------------------------#
129 #----------------------------#
130 __write_meta_pkg_touch
() { #
131 #----------------------------#
133 local pkg_ver
=$
(grep "^${meta_pkg}[[:space:]]" ..
/packages | cut
-f3)
134 local gnome_core_ver
=$
(grep "^gnome-core[[:space:]]" ..
/packages | cut
-f3)
135 local kde_full_ver
=$
(grep "^kde-full[[:space:]]" ..
/packages | cut
-f3)
140 999-z-$meta_pkg: $PREV_PACKAGE
141 @rm -f \$(TRACKING_DIR)/${meta_pkg}-{0..9}* && \\
142 touch \$(TRACKING_DIR)/${meta_pkg}-${pkg_ver}
150 @rm -f \$(TRACKING_DIR)/gnome-core-{0..9}* && \\
151 touch \$(TRACKING_DIR)/gnome-core-${gnome_core_ver}
158 @rm -f \$(TRACKING_DIR)/kde-full-{0..9}* && \\
159 touch \$(TRACKING_DIR)/kde-full-${kde_full_ver}
173 #----------------------------#
174 generate_Makefile
() { #
175 #----------------------------#
178 echo "${tab_}Creating Makefile... ${BOLD}START${OFF}"
180 # Start with a clean files
185 for package_script
in scripts
/* ; do
186 this_script
=`basename $package_script`
187 pkg_ver
=$
(grep "^${this_script#*-?-}[[:space:]]" ..
/packages | cut
-f3)
188 pkg_list
="$pkg_list ${this_script}"
189 __write_entry
"${this_script}" "${pkg_ver}"
190 PREV_PACKAGE
=${this_script}
193 PACKAGE
=$
(basename $PWD)
195 # alsa, kde-core and xorg7 are also available dependencies, thus handled
201 kde-koffice
) pkg_list
="$pkg_list 999-z-${PACKAGE}"
202 __write_meta_pkg_touch
"${PACKAGE}"
207 # Add a header, some variables and include the function file
208 # to the top of the real Makefile.
214 TRACKING_DIR= $TRACKING_DIR
225 @echo --------------------------------------------------------------------------------
226 @echo \$(BOLD)\$(1) target \$(BLUE)\$@\$(BOLD)
233 @echo --------------------------------------------------------------------------------
234 @echo \$(BOLD) Build complete for the package \$(BLUE)\$(PACKAGE)\$(BOLD) and its dependencies
239 @\$(call fin_message )
243 cat $MKFILE.tmp
>> $MKFILE
244 echo "${tab_}Creating Makefile... ${BOLD}DONE${OFF}"
250 if [[ -e Config.
in ]] ; then
251 echo -e "\n\tThis script must be run from inside a target package directory.\n"
255 if [[ ! -d scripts
]] ; then
256 echo -e "\n\tNo ./scripts/ directory has been found.\n"
262 cp ..
/progress_bar.sh .