text: Field & StreamThe natural settings of Alabama provide outdoor sportsmen many excellent areas for both hunting and fishing. Many of the hunting lodges and resorts provide activities and recreation suitable for the while family and public fishing lakes are typically found within larger state and national parks Outdoor AlabamaRun by the Alabama Department of Conservation and Natural Resources, this website is an extensive resource for hunters, fishers and all who enjoy nature. Visitors can find hunting tips, read hunting news, exchange techniques and learn about the best spots to hunt and fish. Bent Creek LodgeLocated in the West Central Alabama's Sunbelt, Bent Creek Lodge is a great location for those looking to hunt whitetail deer or wild turkey. The lodge has over 30,000 acres of pristine fields and riverfront woodland, and accommodates both bow and gun hunting. White Oak PlantationWhite Oak Plantation is a premier hunting resort set along Opintlocco Creek in south central Alabama. The terrain itself is a refreshing mix of densely forested bottomlands to undulating hills of crops and wooded thickets. The resorts commitment to a family atmosphere is just one of the reasons they offer a number of outdoor activities such as bird watching, nature hikes and bass fishing. The comfortable accommodations include pleasant sleeping rooms, a full service family-style dining room and a deluxe trophy lounge that can comfortably accommodate 200. White Oak can be found outside of Tuskegee, Alabama. Lee County State Public Fishing LakeLocated six miles southeast of Opelika, Lee County Lake is a 130 acre lake perfect for anglers of all skill level. The lake is stocked with bass, bluegill, shellcracker, catfish and crappie. A launching ramp is available for boat fishing, and boats are also available for rental. A fishing pier makes deeper water fishing accessible to all. The park also features concessions, a bait and tackle shop and rental cabins. W. L. Holland & Mobile-Tenshaw Delta Wildlife Management AreaLocated In Baldwin and Mobile Counties, the W. L. Holland & Mobile-Tenshaw Delta WMA consists of 58321 acres of marsh and timberland and more than 15,000 acres of shallow water. Seasons allowed within this WMA include deer, rabbit, dove, waterfowl, turkey and feral hog. Doublehead Resort & LodgeDoublehead Resort specializes in professionally guided quail hunts. The Resort offers a 5-stand sporting clay range that includes 7 fully automatic electronically controlled traps. Set on Wilson Lake, guests have access to a sand beach and swimming area, lighted tennis courts, a basketball court, two playgrounds, a swimming pool with a cascading stream and a softball field. Area activities include horseback riding, hiking and a number of water sports. |


text:
April 20 is the counter-culture "holiday" on which lots and lots of people come together to advocate marijuana legalization (or just get high). Should drugs—especially marijuana—be legal? The answer is "yes." Immediately. Without hesitation. Do not pass Go. Do not collect $200 seized in a civil asset forfeiture. The war on drugs has been a dismal failure. It's high time to end prohibition. Even if you aren't willing to go whole-hog and legalize all drugs, at the very least we should legalize marijuana.
For the sake of the argument, let's go ahead and assume that everything you've heard about the dangers of drugs is completely true. That probably means that using drugs is a terrible idea. It doesn't mean, however, that the drug war is a good idea.
Prohibition is a textbook example of a policy with negative unintended consequences. Literally: it's an example in the textbook I use in my introductory economics classes (Cowen and Tabarrok, Modern Principles of Economics if you're curious) and in the most popular introductory economics textbook in the world (by N. Gregory Mankiw).The demand curve for drugs is extremely inelastic, meaning that people don't change their drug consumption very much in response to changes in prices. Therefore, vigorous enforcement means higher prices and higher revenues for drug dealers. In fact, I'll defer to Cowen and Tabarrok—page 60 of the first edition, if you're still curious—for a discussion of the basic economic logic:
The more effective prohibition is at raising costs, the greater are drug industry revenues. So, more effective prohibition means that drug sellers have more money to buy guns, pay bribes, fund the dealers, and even research and develop new technologies in drug delivery (like crack cocaine). It's hard to beat an enemy that gets stronger the more you strike against him or her.
People associate the drug trade with crime and violence; indeed, the newspapers occasionally feature stories about drug kingpins doing horrifying things to underlings and competitors. These aren't caused by the drugs themselves but from the fact that they are illegal (which means the market is underground) and addictive (which means demanders aren't very price sensitive).
Those same newspapers will also occasionally feature articles about how this or that major dealer has been taken down or about how this or that quantity of drugs was taken off the streets. Apparently we're to take from this the idea that we're going to "win" the war on drugs. Apparently. It's alleged that this is only a step toward getting "Mister Big," but even if the government gets "Mister Big," it's not going to matter. Apple didn't disappear after Steve Jobs died. Getting "Mr. Big" won't win the drug war. As I pointed out almost a year ago, economist and drug policy expert Jeffrey Miron estimates that we would have a lot less violence without a war on drugs.
At the recent Association of Private Enterprise Education conference, David Henderson from the Naval Postgraduate School pointed out the myriad ways in which government promises to make us safer in fact imperil our safety and security. The drug war is an obvious example: in the name of making us safer and protecting us from drugs, we are actually put in greater danger. Without meaning to, the drug warriors have turned American cities into war zones and eroded the very freedoms we hold dear.
Freedom of contract has been abridged in the name of keeping us "safe" from drugs. Private property is less secure because it can be seized if it is implicated in a drug crime (this also flushes the doctrine of "innocent until proven guilty" out the window). The drug war has been used as a pretext for clamping down on immigration. Not surprisingly, the drug war has turned some of our neighborhoods into war zones. We are warehousing productive young people in prisons at an alarming rate all in the name of a war that cannot be won.
Albert Einstein is reported to have said that the definition of insanity is doing the same thing over and over again and expecting different results. By this definition, the drug war is insane. We are no safer, and we are certainly less free because of concerted efforts to wage war on drugs. It's time to stop the insanity and end prohibition.
You might also like,
What The People Want: Abolishment of the TSA and Marijuana Legalization

subset: commoncrawl


text:
/ 22
» Classic, contemporary, and business essentials
» Purchase 'as is' or customize options further
» Delivery within 14 days — the fastest in the industry
» Over a dozen customizable options
» Real time rendering of your designed shirt
» Hundreds of fabrics across all patterns and price points
» Delivery within 14 days — the fastest in the industry
» Hundreds of fabrics across all patterns and price points
» Select a fabric and begin designing
» Prices start at $70
» Choose a gift value from $50 - 500
» Personalize with a message to the recipient
» Send now or on a specific date
» Send immediately as an e-certificate or traditionally via mail
» What to expect from a Deo Veritas custom dress shirt:
✧ Super fast delivery by:
✧ Perfect fit guarantee
✧ Immaculate construction and details
» We started this company in 2007 with a simple premise – creating beautiful dress shirts that fit perfectly.
» In the years that have passed, our passion to fulfill that mission is as strong as ever.
» Deo Veritas offers (4) four easy to follow measuring methods
» Once your measurements are finalized you can re-order new shirts quickly by simply selecting your saved profile
» Profiles can be easily edited and personalized for different occasions (i.e. formal vs. casual or tucked vs. untucked)
» Each method comes with our 1st shirt, perfect fit guarantee
» Get inspired through one of our seasonal lookbooks
» Our Lookbook's showcase a number of classic and contemporary shirting favorites
» Talk with one of our style & fit consultants to walk through any questions
» Our consultants typically respond within the same business day
» Follow us on social media for the latest updates
☎ 800 525 0301
✉ email@example.com


text:
This post represents a deliberate attempt to enflame the passions of the internet and drive traffic to this blog so that I can make tons of cash from all of my advertisers.
I would also like to say (and this may sound a bit off-topic, but it has to be said): Pepsi is the most spectacularly tasty beverage ever made and Coke really can't hold a candle to it.
Now, to the issue at hand:
I read somewhere in a report from someone to some political body in Europe that if homosexual couples are allowed to marry, and thereby gain all of the protections and rights of such a relationship, that it would be way easier for them to adopt kids. And that, in the opinion of the group responsible for this report (I don't know who they are, but I read it on the internet so just trust me: it is very very credible), this was the primary reason to not allow homosexual couples to marry. Because we shouldn't, in the opinion of the writers of the report, make it as easy for gay couples to adopt; that a homosexual marriage would not, in general, be a good environment in which to raise children. Maybe some gay couples would be great co-parents, but they'd be the exception, and the rule requires that this be discouraged. So: no gay marriage because no gay adoption.
This argument was not deployed during California's Proposition 8 campaign. Not that I recall, anyway. Maybe it was. I'm not a very good payer of attention. But if it wasn't, why not?
Is the premise true (that as a rule a gay marriage is not a good environment in which to raise children?)
Is the alternate premise true (that it is better to raise children in heterosexual families and so, as a rule, gay adoption should be impeded or at least the process more selective?)
Is the Precautionary Principle of any help here?
Do you know what else is awesome (sorry, again a little tangential)? Huggies diapers. They have Mickey Mouse on them and Erin loves Mickey Mouse.
Here's my two cents: the opinion that an average gay marriage poses a greater risk to child development than an average heterosexual marriage is based on no respectable empirical data. Why? Because gay marriages have been so few and far between and so recent that there is no data set to sample from for us to be able to tell if the kids are turning out worse or being damaged in some particularly gay way.
And deploying the Precautionary Principle without understanding what parameters need to regulate it (I have a friend who does nothing but think about the Precautionary Principle all day long and how it is misapplied all over the world and particularly in international environmental regulations) is overzealous. At that extreme level of precaution we should also be building space defenses against alien invasion…just in case: We have no data that says aliens are likely to invade, but if they did it would be really bad.
As for a priori reasons to think that children of gay couples will, necessarily (that's what it would mean if the reason is a priori) be damaged…what? On what grounds would we think that they'd have to turn out worse or damaged? I don't mean on what empirical grounds, because we already know we have none of those (see above re: poverty of data sets). I mean on what logical, conceptual grounds. What is it about the concepts of parenthood, family, homosexuality, and childhood that would tell us that kids with gay parents would be worse off, as children and later as adults?
Toyota makes some pretty good cars and SUVs. We only buy Toyotas.
What do you think? Do you think, like a crazy person, that letting The Gays adopt kids is worse than the Holocaust, which, according to you, never happened? Or do you think that every loving couple who wants to raise children is perfectly suited to do so (which is what you should think if you are at all intelligent and not a total racist)? You are either one or the other. You are either a crazy Holocaust denier racist or a rational human being.
Which one are you? Please explain your reasons.
Also, please buy Pepsi, Huggies, and Toyotas.


text:
We guarantee the condition of every book as described on the Abebooks web site. If you're dissatisfied with your purchase (Incorrect book/not as described/damaged) or if the order hasn't arrived, you're eligible for a refund within 30 days of the estimated delivery date. Please use the Ask bookseller a question link to contact us and we'll respond within 2 business days.
Shipping costs are based on books weighing 2.2 LB, or 1 KG. If your book order is heavy or over-sized, we may contact you to let you know extra shipping is required.


text:
The Vontobel Indices website is not intended for persons who are subject to a jurisdiction forbidding the publication of the information contained in it or access to the Vontobel Indices website. Persons to whom such restrictions apply are not permitted to access the Vontobel Indices website. Restrictions apply particularly, but not exclusively, to citizens of the United States of America (the USA) and the United Kingdom (the UK), and to US or UK residents.
Each user is responsible for acquainting themselves with any restrictions before visiting our website and for adhering to these. By accessing this website, you confirm that you are not subject to any jurisdiction forbidding such access.
The owner and operator of this Vontobel Indices website, and thus the entity responsible for its content, is Bank Vontobel AG, with registered office in Zurich at Gotthardstrasse 43, 8002, Switzerland, a company entered in the commercial register of the Canton of Zurich under company number CH-020.3.902.757 -5 (hereinafter "Bank Vontobel"). Bank Vontobel is a wholly owned subsidiary of Vontobel Holding AG, Zurich, Switzerland.
The contents of the Vontobel Indices website are protected by intellectual property rights and trademark law.
All copyrights on, trademarks in and other rights to the content of the Vontobel Indices website remain exclusively and completely reserved by Bank Vontobel or other companies of the Vontobel Group (including Vontobel Holding AG; hereinafter: "VT Group companies") or, where applicable, by the applicable third party named on the Vontobel Indices website. "Vontobel" and the Vontobel logo, for example, are registered trademarks of Vontobel Holding AG. Protected copyrights, trademarks and other rights are, without exception, subject to the provisions of current intellectual property and trademark law and the ownership rights of the respective registered owner.
Using the Vontobel Indices website does not give the user any rights to the content, to the registered trademarks or to any other element of the Vontobel Indices website. Downloading or printing pages or extracts of the website is only permitted for non-public, non-commercial or non-economic purposes - i.e. only for personal or internal use - and the full source must be cited and the relevant intellectual property and trademark law must be respected.
Any other use, in particular the complete or partial reproduction, quotation or publication of any content from the Vontobel Indices website for public, commercial or economic purposes, is only permitted with the prior written authorisation of the applicable rights holders, particularly Bank Vontobel, and the source must be cited in full in each case.
In particular, Bank Vontobel also owns all rights (including any trademark rights) to the indices it calculates which are shown on the Vontobel Indices website (hereinafter the "Vontobel Indices"; including their constituent parts such as indicators and calculation parameters [index methodology] and, if not otherwise specified or otherwise evident from the circumstances, the price data on which the respective indices are based). Bank Vontobel expends considerable human and financial resources in its capacity as an index calculation agent (hereinafter the "VT Index Calculation Agent") for the compilation, calculation, adjustment and ongoing development of the Vontobel Indices.
Each commercial or economic use of the Vontobel Indices by third parties for the purpose of issuing, trading, marketing, distribution etc. requires prior written authorisation by Bank Vontobel.
Using the Vontobel Indices website in a manner which results in the website being modified, damaged or overloaded or so that third parties' use of this website is affected is not permitted.
The information and views contained in the Vontobel Indices website do not constitute an invitation or recommendation or an offer to use a service, to buy or sell financial instruments or to engage in other transactions. They serve as a source of information only. They do not constitute buy or sell recommendations and are communicated outside of any contractual relationship. They do not create any contractual advisory or information relationship.
The Vontobel Indices website does not constitute investment advice and is not for use as any other decision-making aid for legal or tax matters or other matters involving advice. Please note that investments in any financial instruments described on the Vontobel Indices website or in financial instruments based on an index or VT index shown on the Vontobel Indices website are typically associated with risks (in certain circumstances up to and including total loss of the invested capital) and are therefore not suitable for every investor. We invite you to obtain advice from your bank, investment advisor or tax advisor prior to making an investment decision. Investment decisions should always also be made on the basis of the relevant terms and conditions defined by the issuer of the applicable financial instrument. The relevant product terms and conditions, in particular the descriptions these contain of the particular risk factors of the financial instruments should be read very carefully. These are generally available free of charge from the issuers of the financial instruments and/or their distribution partners.
The Vontobel website continuously publishes information, particularly, but not exclusively, concerning certain indices (i.e. index numbers or indicators), which can be used to express changes in certain variables (such as share prices), especially over time. It is fundamentally a freely accessible information offering and definitely not a trading system. There may be delays in displaying the relevant information for various reasons; the entry of information into the Internet may, inter alia, be interrupted due to technical problems and transmission errors are possible. It should not be inferred from errors or technical problems of this type that any financial instruments described on the Vontobel Indices website or financial instruments which are based on an index or VT index shown on the Vontobel Indices website cannot be traded. Furthermore, it cannot be guaranteed that any information shown on the Vontobel Indices website, such as (rate/price) indications, will also be reflected as tradable rates/prices in the trading system of a broker or on the stock exchange. Bank Vontobel checks and updates the information on its website regularly. Certain information, such as (rate/price) indications (if provided) is provided in close to real time. Bank Vontobel compiles information to the best of its knowledge.
However, no liability or guarantee that the information provided on the Vontobel Indices website is up-to-date, correct/accurate and complete can be assumed (see also paragraph 10. below). In particular, Bank Vontobel does not provide any guarantee that certain information (such as rates, prices) will be presented in real time.
Bank Vontobel offers no express or implied warranty or assurance in relation to the information published on the Vontobel Indices website, either in terms of the results of using an index or VT index or in regard to the state of an index or VT index at any given moment or in other respects. VT indices are developed, prepared, calculated and marketed/published solely by Bank Vontobel using its best efforts to ensure the accuracy of the calculation of the indices. Bank Vontobel - without prejudice to any possible obligations toward such persons whom Bank Vontobel has permitted economic use of the VT indices in writing (see paragraph 3. above) - does not have any obligation to third parties (including investors and/or financial intermediaries that hold investments in financial instruments based on the VT indices) for any error in VT indices. The publication of the VT indices by Bank Vontobel does not constitute an investment recommendation by Bank Vontobel and does not in any way comprise an assurance or opinion by Bank Vontobel regarding any investment in a VT-indices-based financial instrument.
The information contained in the Vontobel Indices website has been obtained from sources which Bank Vontobel considers reliable and was compiled by Bank Vontobel to the best of its knowledge. However, Bank Vontobel does not provide any assurance that the information and views on the Vontobel Indices website are correct, reliable, up-to-date or complete. Bank Vontobel has no obligation to correct any incorrect, incomplete or outdated information.
The information provided on this website is for information purposes only. Anyone who uses this data for other purposes, assumes full responsibility for doing so. The operation of the Vontobel Indices website may be interrupted or discontinued at any time and without prior notice; the right to fully or partially amend the relevant content of the Vontobel Indices website remains reserved.
Bank Vontobel accepts no responsibility and gives no guarantee to the effect that the functions on the Vontobel Indices website are free of defects or will not be interrupted, that defects will be corrected, or that this website or the server are free of viruses or other harmful elements.
Bank Vontobel is not liable, except in cases of gross negligence or intent, for any damage or consequential damage of a tangible or intangible/non-material nature arising directly or indirectly from or in connection with access to or use or non-use of the Vontobel Indices website or the impossibility of accessing or using the Vontobel Indices website. This is without prejudice to the liability for damages arising from injury to life, body or health caused by a negligent breach of duty or by negligent breach of duty by an assistant/vicarious agent of Bank Vontobel.
Bank Vontobel assumes no liability in connection with damages or consequential damages resulting from non-authorised use of any content of the Vontobel Indices website for public, commercial or economic purposes.
Bank Vontobel has not checked the other websites linked to the Vontobel Indices website and is not responsible for their content. If you use certain links, you will leave the Vontobel Indices website at your own risk. Bank Vontobel is not liable for any damage or consequential damage arising from accessing the websites of third parties. Links to other websites are provided to the users of this website for convenience only.
Where options to enter personal or business data (e-mail addresses, names, addresses etc.) are provided within the Vontobel Indices website, entry of such data by the user will expressly be carried out on a voluntary basis.
Bank Vontobel cannot rule out the possibility that the data it receives might be read, amended, redirected, falsified or destroyed by third parties.
Bank Vontobel assumes no liability arising from the transmission of data (for example using e-mail).
Please note that in relation to a particular financial instrument, in addition to acting in its capacity as an index calculation agent regarding the underlying of this financial instrument (i.e. the corresponding VT indices) Bank Vontobel may also at the same time act in another capacity, for example, as a lead manager or paying agent or principal agent. Bank Vontobel always performs the respective roles to the best of its knowledge and when performing its various functions, maintains the necessary care and independence for these.
Bank Vontobel or, as the case may be, other VT Group companies may act as a market-maker for any financial instruments described on the Vontobel Indices website or for financial instruments which are based on an index or VT index shown on the Vontobel Indices website or may trade these financial instruments for their own account. Please note that Bank Vontobel or other VT Group companies may also take their own positions in connection with such financial instruments, for example hedges, which may have a negative impact on the price of the financial instrument concerned or on the corresponding underlying.
Under certain circumstances, Bank Vontobel or other VT Group companies sell the corresponding financial instruments to distribution partners or other financial institutions at a discount to the issue price, grant a rebate or trailer fees for the benefit of and for the account of distribution partners or financial institutions. The respective provider will provide further information on request, in particular on the amount of this remuneration.
Bank Vontobel or other VT Group companies and/or their respective organs, senior executives and employees may hold shares or long or short positions in the corresponding financial instruments, the underlyings related to these or other financial instruments which also relate to the respective underlyings or may have held these in the past and may buy or sell the aforementioned financial instruments on their own account or on behalf of third parties at any time. In addition, Bank Vontobel or other VT Group companies may maintain relationships with the named companies or may have maintained relationships with them in the past or may provide them with investment banking, capital market and/or other services or have provided them with these in the past.
If one or more provisions of these terms and conditions of use should be declared to be invalid, illegal or unenforceable by a competent court or authority in any jurisdiction, then the corresponding provisions are not to be regarded as a part of these terms and conditions of use; however, such a declaration has no impact on the validity, legality or enforceability of the remaining provisions of these terms and conditions of use.
Swiss law (under exclusion of conflict-of-law rules) applies to these terms and conditions of use and to all disputes that may arise from them. The exclusive place of jurisdiction shall be the competent courts of the city of Zurich.
Only the first 1500 indices will be exported as a PDF
Vontobel Leveraged Indices (Factor Indices) calculate the daily percentage performance of a reference instrument multiplied at a constant factor.
The factor is determined at index start date and remains fix over the entire life span of the index.
Vontobel leveraged indices (Factor Indices) hence represent a leveraged investment in a reference instrument.
Vontobel Leveraged Indices can be of type long or short.
A leveraged index of type long increases in value when the reference instrument price increases. The increase is levered with a multiplicator (factor), so the index increases over-proportionally. A decrease in the reference instrument price incurs a leveraged decrease of the index value.
A leveraged index of type short behaves inverted : Here a decrease in the reference instrument price leads to a leveraged increase in the index value. Increasing reference instrument prices lead to a leveraged decrease in the index value.
Due to the performance multiplicator inherent in Leveraged Indices – over-proportional losses, even a total loss is possible. Every leveraged index is equipped with a barrier to limit extreme sudden index value decreases. The barrier determines the maximum value a reference instrument may increase (for short indices, or decrease for long indices) over the timespan of a day. Should the barrier be touched or broken – the index calculation is briefly suspended and a new day is simulated.


text:
Walnut Linosa Decorative Wall Surface 4x8
As low as $155.38
Walnut Linosa Decorative Wall Surface 4x8
Walnut Linosa decorative laminate sheet roll 4x8 ft.
High quality product and eco-friendly product
Cost effective when compared to natural wood veneers
Strong and durable laminate surface
Easy to clean and maintain
Optional upgrades:
Can be ordered layered on a 3/4" thick 4x8 ft MDF board
Individual boards can be cut in various sizes
Clean with water or non-abrasive detergent. Wipe dry with a clean cloth.
Delivery in 1-2 weeks.


text:
**Important note: The pool bar at the Globales Acuario hotel will be closed until further notice. The Restaurant Bar remain open.**
If your scheduled flight arrives after 4 AM, the hotel room will be available on the day of arrival at the official check-in time, which may vary depending on the booked hotel.Likewise the check-out time on your departure day has to be maintained. If your scheduled return flight departs until midnight you have to check-out at the dedicated check-out time that day.Early check-in or late check-out can be arranged with our service team for a fee and depending on availability.


text:
Prince George's County police have charged 49-year-old Linwood Johnson of Oxon Hill, Md., with the murder of Alexandria community leader Lenny Harris, the Washington Examiner reports.
Robbery was the motive for the killing, according to the Examiner, which reports police have obtained a confession from Johnson and have recovered a gun used to kill Harris.
Other arrests in connection with the killing are "imminent," the newspaper reported.
Harris, 53, went missing last September. He was found in a well last weekend behind a house in Fort Washington, Md.


text:
Welcome to Resin Bound Gravel, we are specialist installers of resin bound gravel surfaces and have completed various projects at domestic homes, public attractions and commercial locations to create attractive and functional flooring solutions. Do you need an experienced resin-bound gravel contractor in Astley? Then you have come to the right place.
We install resin bound gravel in Astley CV10 7 which is a porous paving system that is available in a wide range of natural aggregates. Creating resin-bound gravel involves the process of encapsulating natural aggregate within a polyurethane resin that, when screeded, provides a smooth textured, aesthetically pleasing, hardwearing surface that is low maintenance and resistant to cracking.
The ideal surface for the system to be installed upon would be a macadam base as it's SUDS (Sustainable Urban Drainage System) compatible meaning it's open textured and porous allowing water to drain correctly. We offer a variety of designs for resin bound stone in Astley which come in a range of colours to suit your preference. The resin-bound specialist surfacing isn't to be mistaken for resin bonded which is a scattered stone paving finish.
Resin-bound aggregate is suitable for both local commercial and domestic projects:
We can talk you through all of the design options for resin-bound gravel also give you some advice on the costs for installing this type of surfacing. Simply complete our contact form with your details and we'll be in touch as soon as possible to help with your enquiry.
The advantages of resin stone aggregate flooring are that it's a surfacing that requires low maintenance, is durable, SUDS compliant and porous/permeable, seamless smooth finish and decorative allowing you to create imaginative and exciting environments. As an alternative to resin-bound gravel, we also offer rubber mulch flooring designs in Astley CV10 7 which provide safety qualities for pathways in areas like children's playground, schools and the surrounding areas.
A resin-bound gravel tree pit system is perfect as it's both permeable and joint free meaning that whilst water can drain through allowing the tree to soak up nutrients, it prevents weeds and other unwanted vegetation to protrude through its attractive surface. Suppliers and contractors specify a deeper depth on tree pits from the initial 16mm depth (3-6mm aggregate size) specification and recommend a 50mm depth finished system (6-10mm aggregate size).
Resin-bound stone driveways/pathways have many advantages:
Costs and prices vary between jobs however if you require a quote or any further information please contact us as we can provide a list of specifications, product sheets, material data forms and case studies.
Resin stone can be chosen in many natural aggregates. The nearby permeable surfacing is formed by attaching natural aggregate with a polyurethane resin, which provides a level, long-lasting and attractive surfacing. This paving is low maintenance and is also resistant to cracking. It is ideal for this paving to possess a tarmacadam sub-base since this is SUDS compliant and therefore the water can drain through easily because the surface is porous. This bound stone is suitable for various functions. As a result of its level textured surface, the surfacing is perfect for use with wheelchairs, also, the porous properties help to reduce the water build-up.
Some routine upkeep is recommended since this enables the flooring near me to stay in high-quality shape and helps to keep it looking brand new. If an upkeep program is produced, your floors life-span will immediately rise, making the surfacing safe for use. It is essential that you don't wait for the floor to get dangerous before starting the upkeep procedure as this might make the surface hazardous.
Cleaning the floor routinely is vital to ensure leaves, contaminants and rubbish do not remain on your resin-bound paving area. Just about any debris that gets trapped may affect the porosity causing the system no longer Sustainable Urban Drainage Systems (SuDS) compliant. A normal weed killer could be applied for your surfacing if weed growth appears, make certain not to make use of oil-based weed killer since this might cause harm to the surface.
A soft power cleanse is enough to prevent the development of weed growth keeping it closest to the original design. Warm water may be used along with a soap to clean the aggregates ground, but boiling hot water really should not be utilized as this will cause harm. Snow and ice can be taken off off the resin-bound surface area using a gentle bristled brush or possibly a rubberized remover in order to eliminate the surfacing getting broken.
The natural stone is mixed on-site with stone aggregate and polyurethane binder, this is because the style could be installed in any size or shape The layout is constructed on a macadam or reliable permeable sub-base and will keep on being hard and strong whilst requesting minimal preservation.
For more information regarding the installation of resin bound gravel in Astley CV10 7 and the costs of our services, please fill in the contact box provided and we will get back to you with a quote and more details on the surface.


text:
Search the Slater's Commercial Directory of Ireland 1846 Advertisements on Familyrelatives.com
Familyrelatives.com releases online new Trade Directory records for 120 Counties 1824 - 1846
The Pigot's and Slater's Directories form a unique collection of trade, commercial and occupational information from 1824 - 1846 for England, Wales and Ireland going back as far as the time of George IV when Britain was about to become the workshop of the world.
The directories contain all the major professions as well as the nobility, gentry and clergy. All the addresses are identified including trades and occupations, even taverns and public houses.
Towns and parishes are detailed for each area and the introduction contains key information including the number of inhabitants (taken from the census returns) with a geographical and topographical description and the local history. A description of the main trades, produce, manufacturers and industries of the area or town are also covered.
Search or Browse these records and view original images.
The collection is searchable by surname and forename or the business name for each of the counties. The Trade directories provide an invaluable resource for family history researchers wanting to know more about the area where their ancestors lived and the various trades and businesses where they worked.
The records can be searched by name and browsed by using the Previous and Next page viewing tools on the viewer.
Due to the age of the records these have been scanned and the images of the original printed pages have been made word searchable using OCR which is the recognition of printed or written text characters by a computer.
New Website in Beta
Why Beta? Well because we think that we can always improve, from the quality and range of the historical records to your experience and interaction on our website with our emphasis on ease of use and lower cost.
We have many changes to come on Familyrelatives.com over the next few months from Calendar's to Photo Albums, to Family Tree software, to Family & Friend inclusion and we would love your feedback and interaction.


text:
From Openmoko
Neither MokoMakefile (nor FSO-makefile) work on Intrepid amd64
When trying to build the toolchain many packages (gcc 3, gcc 4, qemu...) will fail to build. Except from qemu, most are because variations of the following error:
/usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
As, for instance, in libxml2:
| nanohttp.c: In function 'xmlNanoHTTPFetch__internal_alias': | nanohttp.c:1558: warning: ignoring return value of 'write', declared with attribute warn_unused_result | nanohttp.c: In function 'xmlNanoHTTPSave__internal_alias': | nanohttp.c:1597: warning: ignoring return value of 'write', declared with attribute warn_unused_result | In function 'open', | inlined from 'xmlNanoHTTPSave__internal_alias' at nanohttp.c:1588: | /usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments | make[2]: *** [nanohttp.lo] Error 1 | make[2]: Leaving directory `/home/jisakiel/openmoko/build/tmp/work/x86_64-linux/libxml2-native-2.6.29-r3/libxml2-2.6.29' | make[1]: *** [all-recursive] Error 1 | make[1]: Leaving directory `/home/jisakiel/openmoko/build/tmp/work/x86_64-linux/libxml2-native-2.6.29-r3/libxml2-2.6.29' | make: *** [all] Error 2 | FATAL: oe_runmake failed NOTE: Task failed: /home/jisakiel/openmoko/build/tmp/work/x86_64-linux/libxml2-native-2.6.29-r3/temp/log.do_compile.24092 NOTE: package libxml2-native-2.6.29-r3: task do_compile: failed ERROR: TaskFailed event exception, aborting NOTE: package libxml2-native-2.6.29: failed
I believe it must be related to D_FORTIFY_SOURCE enabled by default (see: https://wiki.ubuntu.com/CompilerFlags ). However I cannot get to work.
I tried editing build/conf/local.conf and adding TARGET_CFLAGS="-D_FORTIFY_SOURCE=0" there (as well as ASSUME_PROVIDED += "gcc3-native" to keep building), with no success at all.
System is intrepid on amd64.
- I get the same error on Intrepid i386. Any solutions? --Cgerum 13:46, 28 October 2008 (UTC)
From : http://lists.openmoko.org/nabble.html#nabble-td1615118 put export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE} -D_FORTIFY_SOURCE=0" in your build/conf/local.conf Seems to have worked for me --Urzumph 23:46, 20 December 2008 (UTC)
I installed a debian sid chroot following the instructions on https://wiki.ubuntu.com/DebootstrapChroot . compilation did not finish yet, but seems to work. --Cgerum 16:16, 2 November 2008 (UTC)
MokoMakefile won't work on Ubuntu Hardy Heron
Hello, there!
Since my upgrade to Hardy Heron MokoMakefile seems to be broken on my ubuntu box. I already tried several times to download a new Makefile into a fresh directory - without success. What I get is always:
- ~/moko$ make image
( cd build && . ../setup-env && \ ( bitbake openmoko-devel-image u-boot-openmoko ) ) ERROR: Openembedded's config sanity checker detected a potential misconfiguration. Either fix the cause of this error or at your own risk disable the checker (see sanity.conf). Following is the list of potential problems / advisories:
/proc/sys/vm/mmap_min_addr is not 0. This will cause problems with qemu so please fix the value (as root).
make: *** [openmoko-devel-image] Error 1
For another report on this problem see also: http://lists.openmoko.org/pipermail/community/2008-May/017545.html
When trying to compile the april software update (ASU) this error doesn't occour, though.
$ sudo vim /etc/sysctl.conf
Change vm.mmap_min_addr = 65536 to vm.mmap_min_addr = 0
$ sudo sysctl -w vm.mmap_min_addr=0
Another solution consist to run these commands: (This one worked for me, not the first)
echo 0|sudo tee /proc/sys/vm/mmap_min_addr
su root echo 0 > /proc/sys/vm/mmap_min_addr exit
Obviously, it's doing the same thing.
(Solutions found here: http://lists.openmoko.org/nabble.html#nabble-td759686 and here: http://lists.openmoko.org/nabble.html#nabble-td778718)
Finally, the best and recommended solution (as of Intrepid) would be to add that line ( vm.mmap_min_addr = 0 ) to a standalone file (named as one might wish, for instance 60-mmap-mokomakefile-fix) on /etc/sysctl.d/ .
different solution
Disable the sanity Checker just bytouch conf/sanity.confin your build dir.
The paths that are mentioned on this page are partially wrong
I am not sure enough what the paths should be, but - two things have changed since the section "developing with mokomakefile/How to add your own shiny new application" of this page was created: - The path where the packages are kept, and - Where to add the information that we have added a new package.
Update git to 1.5!
Version git-1.4 does not work, check your version with the command
git --version
and install at least git version 1.5 if not already present.
Fails on a 32bit machine - try again without ccache?
/bin/sh ./libtool --mode=compile ccache gcc -DHAVE_CONFIG_H -I.... -W... -O2 -c -o libbfd.lo build/tmp/work/armv4t-linux/binutils-cross-2.17-r0/binutils-2.17/bfd/libbfd.c ccache gcc -DHAVE_CONFIG_H -I... -W... -O2 -c /usr/local/oe/build/tmp/work/armv4t-linux/binutils-cross-2.17-r0/binutils-2.17/bfd/libbfd.c -o t shift count >= width of type make[5]: *** [libbfd.lo] Error 1
Any insight here? --Adam 23:10, 15 May 2007 (CEST)
- Try without ccache (did you get it compiled meanwhile or can we remove this?) --BernhardKaindl 23:05, 19 September 2007 (CEST)
Facing Problems with ogg libraries
just get the path and delete the .bb file that causes the problem
Building on Fedora Core 6
Install stuff needed for OpenMoko:
- yum install python m4 make wget curl ftp cvs monotone subversion \
tar bzip2 gzip unzip python-psyco ccache perl texinfo texi2html \ diffstat openjade docbook-style-dsssl docbook-style-xsl docbook-dtds \ docbook-utils sed bison bc glibc-devel gcc binutils pcre pcre-devel git \ quilt groff linuxdoc-tools patch compat-gcc-34 lynx netpbm (notice compat-gcc-34 wich was needed for FC6 (gcc 4 installed), and lynx which is needed by qemu (no fallback to wget, curl, or links at the moment and no check for it, resulting in strange "sleep" errors when trying to build without lynx).
Build it: $ make setup $ make openmoko-devel-image $ unset LD_LIBRARY_PATH $ make update-makefile && make update && make setup && make openmoko-devel-image
I have also done a $ unset LD_LIBRARY_PATH; make update-makefile && nice make update && nice make setup && nice make all (This takes several hours)
Build qemu: $ make qemu
Run it:
- echo 1024 > /proc/sys/dev/rtc/max-user-freq
$ make run-qemu This will bring up the OpenMoko :) Use SPACE for AUX and ENTER for POWER. Not quite the same as holding a Neo1973 in your hands I would guess, but this is the best we can do for now. Thanks!
Building on Ubuntu Feisty
MokoMakefile requires more than 512 MB of RAM + Swap space (around 1GB?).
If you need swap, please check that its size under Feisty is not null!
Bug #105490 describes the current issue and offers a workaround (23 Jul 07).
Fails trying to build bluez-utils
on Gentoo Linux, it fails compiling bluez-utils (I've tried also "make clean-package-bluez-utils" before the following command)
do a "make build-package-libusb; make clean-package-bluez-utils" and it should continue (the bluez-utils .bb is missing the libusb dependency)
openSUSE 10.1 and 10.2 workarounds
ltrace package fails to build with error:
... checking for pid_t... yes checking for getopt... yes checking for getopt_long... yes checking gelf.h usability... no checking gelf.h presence... no checking for gelf.h... no configure: error: ***** gelf.h not found ***** FATAL: oe_runconf failed
FIX: edit /home/moko/build/tmp/work/armv4t-linux/ltrace-0.4-r0/ltrace-0.4/configure.ac at line 44: remove the following block:
for path in /usr/include/elfutils /usr/local/include/elfutils \ /usr/include/libelf /usr/local/include/libelf; do if test -f ${path}/gelf.h; then CPPFLAGS="$CPPFLAGS -I ${path}" fi done
( it adds /usr/include/elfutils to path, which causes cross-compile badness error )
QEMU build fails to compile USB code
/usr/include/linux/usbdevice_fs.h:116: error: variable or field `__user' declared void /usr/include/linux/usbdevice_fs.h:116: error: syntax error before '*' token /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c: In function `usb_host_handle_control': /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:103: error: invalid application of `sizeof' to incomplete type `usbdevfs_ctrltran sfer' /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c: In function `usb_host_handle_data': /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:120: error: storage size of 'bt' isn't known /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:132: error: invalid application of `sizeof' to incomplete type `usbdevfs_bulktran sfer' /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:120: warning: unused variable `bt' /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c: In function `usb_host_device_open': /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:199: error: storage size of 'ctrl' isn't known /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:202: error: invalid application of `sizeof' to incomplete type `usbdevfs_ioctl' /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c:199: warning: unused variable `ctrl' make[2]: *** [usb-linux.o] Error 1
FIX: edit /home/moko/openmoko/trunk/src/host/qemu-neo1973/usb-linux.c at line 29 add the following (before #include <linux/usbdevice_fs.h>)
#include <linux/compiler.h>
hint: there is a copy of the file in /home/moko/build/tmp/work/i686-linux/qemu-native-0.9.0+cvs20070613-r5/qemu/usb-linux.c
see: http://osdir.com/ml/emulators.kvm.devel/2007-01/msg00101.html
Cannot satisfy fstests
make openmoko-devel-image ... | Collected errors: | ERROR: Cannot satisfy the following dependencies for task-openmoko-debug: | fstests NOTE: Task failed: /no-backup/Moko/build/tmp/work/fic-gta01-linux/openmoko-devel-image-1.0-r0/temp/log.do_rootfs.25036 NOTE: package openmoko-devel-image-1.0-r0: task do_rootfs: failed ERROR: TaskFailed event exception, aborting
Failed on debian etch 2007-07-20 Solution from mailing list post from hardskinone, report of an irc chat
I got help in IRC channel. I do following steps * remove fstest from oe/packages/tasks/task-openmoko.bb , * increase PR field by one * make openmoko-devel-image
conflicting types for 'futimens'
if you encounter the following error:
| In file included from utimecmp.c:40:
| utimens.h:2: error: conflicting types for 'futimens'
| /usr/include/sys/stat.h:370: error: previous declaration of 'futimens' was here
a patch is needed because your glibc is too new. grab & enable the patch as follows
cd openembedded/packages/coreutils mv coreutils_5.3.0.bb coreutils_5.3.0.orig wget http://www.openembedded.org/repo/org.openembedded.dev/packages/coreutils/coreutils_5.3.0.bb cd - cd openembedded/packages/coreutils/coreutils-5.3.0 wget http://www.openembedded.org/repo/org.openembedded.dev/packages/coreutils/coreutils-5.3.0/futimens.patch cd -
Workaround for problems compiling mtd-utils
Change the line on openembedded/packages/mtd/mtd-utils_1.0.0+git.bb
which reads:
SRC_URI = "git://git.infradead.org/mtd-utils.git;protocol=git;tag=master \
SRC_URI = "git://git.infradead.org/mtd-utils.git;protocol=git;tag=a6fa706fe9e7696b4b2045edf9698c3bac07e3e3 \
which forces the recipe to use an older revision (the one which worked last time I built the image on my computer).
Be sure to remember to undo the change later, or else you will not get any new changes to that package. --CesarB 04:48, 25 July 2007 (CEST)
Note: these patches should be updated - the lzo patch is included in the current version, so backing off to the previous version and repatching seems silly. I was able to make it through this part of the build by applying the remaining patches manually. --Ted Lemon 15:44, 29 July 2007 (CDT)
Monotone segfaulting on Ubuntu Feisty Fawn/PPC
If you are running Ubuntu Feisty Fawn on a PowerPC computer you will experience problems running monotone. To fix this issue you need to install monotone as well as the libboost packages from Gutsy. The easiest way to accomplish this is to add the gutsy repositories to your sources.list and change the preferences to look like this:
Package: * Pin: release a=feisty Pin-Priority: 700
Package: * Pin: release a=gutsy Pin-Priority: -100
Package: libc6 libc6-dev tzdata util-linux libgcc1 libstdc++6 monotone Pin: release a=gutsy Pin-Priority: 800
Package: libboost-* Pin: release a=gutsy Pin-Priority: 800
After doing this install monotone in this way: apt-get -t gutsy install monotone. That should install monotone 0.35 with updated (and working) boost libraries.
Fails on ncurses install in Fedora 7 with a "tic -x" message
Adjust the following command to your system, then run it: export LD_LIBRARY_PATH=/home/moko/build/tmp/work/x86_64-linux/ncurses-native-5.4-r8/ncurses-5.4/lib Then start make again and it should pick up where it left off.
You can get a list of potential paths to use with the following command from you main moko directory: find . | grep libncurses
The basic problem is that it is linking against your main system libraries instead of the OpenEmbedded ones.
There's probably a cleaner way of handling this - please update this entry if you know it.
This has been fixed in Openembedded, see Openembedded Bug #2554 for further details.
uboot-gta01 fails to build
Changes in the GIT of U-Boot make the OpenMoko patches unapplyable. For the use of Revision cc3023b9f95d7ac959a764471a65001062aecf41 and everything will be fine for now.
Perl fails to build
After following every bit of advice I can find to 'make clean' and nuke the perl build directories, every build comes up with:
| make[1]: Entering directory `/src/openmoko/build/tmp/work/i686-linux/perl-native-5.8.7-r3/perl-5.8.7' | make[1]: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. Stop. | make[1]: Leaving directory `/src/openmoko/build/tmp/work/i686-linux/perl-native-5.8.7-r3/perl-5.8.7' | FATAL: oe_runmake failed NOTE: Task failed: /src/openmoko/build/tmp/work/i686-linux/perl-native-5.8.7-r3/temp/log.do_compile.19531 NOTE: package perl-native-5.8.7-r3: task do_compile: failed
Solution turned out to be editing /src/openmoko/build/tmp/work/i686-linux/perl-native-5.8.7-r3/perl-5.8.7/makedepend.SH and at line 169 change the regexp to eat references to "<command.line>" to catch what was leaking through.
glibc fails to build
If you see an error like
NOTE: package glibc-2.6.1: started NOTE: package glibc-2.6.1-r10: task do_configure: started ERROR: function do_configure failed ERROR: log data follows (/home/alex/moko/build/tmp/work/armv4t-angstrom-linux-gn ueabi/glibc-2.6.1-r10/temp/log.do_configure.11446) | NOTE: Running /home/alex/moko/build/tmp/work/armv4t-angstrom-linux-gnueabi/gli bc-2.6.1-r10/glibc-2.6.1/configure --build=i686-linux --host=arm-angstrom-linux-gnueabi --target=arm-angstrom-linux- gnueabi --prefix=/usr --exec_prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --li bexecdir=/usr/libexec --datadir=/usr/share --sy sconfdir=/etc --sharedstatedir=/usr/com --localstate dir=/var --libdir=/usr/lib --includedir=/usr/in clude --oldincludedir=/usr/include --infodir=/u sr/share/info --mandir=/usr/share/man --enab le-kernel=2.4.0 --without-cvs --disable-profile --disable-debug --without-gd --enable-clocale=gnu --enable-add-ons=ports,nptl,libidn --with-headers=/hom e/alex/moko/build/tmp/staging/arm-angstrom-linux-gnueabi/usr/include --without -selinux --without-fp --without-fp ... | configure: loading site script /home/alex/moko/openembedded/site/endian-little | configure: loading site script /home/alex/moko/openembedded/site/common-linux | configure: loading site script /home/alex/moko/openembedded/site/common-glibc | configure: loading site script /home/alex/moko/openembedded/site/arm-common | configure: loading site script /home/alex/moko/openembedded/site/arm-linux | configure: loading site script /home/alex/moko/openembedded/site/common | configure: loading site script /home/alex/moko/openembedded/site/common | checking build system type... i686-pc-linux-gnu | checking host system type... arm-angstrom-linux-gnueabi | checking add-on ports for preconfigure fragments... am33 arm hppa m68k mips | configure: running configure fragment for add-on nptl | configure: running configure fragment for add-on libidn | checking sysdep dirs... ports/sysdeps/arm/elf ports/sysdeps/unix/sysv/linux/ar m/eabi/nptl ports/sysdeps/unix/sysv/linux/arm/eabi sysdeps/unix/sysv/linux/arm/e abi ports/sysdeps/unix/sysv/linux/arm/nptl ports/sysdeps/unix/sysv/linux/arm sys deps/unix/sysv/linux/arm ports/sysdeps/unix/sysv/linux nptl/sysdeps/unix/sysv/li nux nptl/sysdeps/pthread sysdeps/pthread sysdeps/unix/sysv/linux sysdeps/gnu sys deps/unix/common sysdeps/unix/mman sysdeps/unix/inet ports/sysdeps/unix/sysv npt l/sysdeps/unix/sysv sysdeps/unix/sysv ports/sysdeps/unix/arm ports/sysdeps/unix nptl/sysdeps/unix sysdeps/unix sysdeps/posix ports/sysdeps/arm/eabi ports/sysdep s/arm/nptl ports/sysdeps/arm sysdeps/wordsize-32 sysdeps/ieee754/flt-32 sysdeps/ ieee754/dbl-64 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic | checking for a BSD-compatible install... /home/alex/moko/build/tmp/staging/i68 6-linux/usr/bin/install -c | checking whether ln -s works... yes | checking for arm-angstrom-linux-gnueabi-gcc... arm-angstrom-linux-gnueabi-gcc -march=armv4t -mtune=arm920t | checking for suffix of object files... o | checking whether we are using the GNU C compiler... yes | checking whether arm-angstrom-linux-gnueabi-gcc -march=armv4t -mtune=arm920t a ccepts -g... yes | checking for arm-angstrom-linux-gnueabi-gcc -march=armv4t -mtune=arm920t optio n to accept ANSI C... none needed | checking for gcc... gcc | checking how to run the C preprocessor... arm-angstrom-linux-gnueabi-gcc -E | configure: error: C preprocessor "arm-angstrom-linux-gnueabi-gcc -E" fails san ity check | See `config.log' for more details. | FATAL: oe_runconf failed NOTE: Task failed: /home/alex/moko/build/tmp/work/armv4t-angstrom-linux-gnueabi/ glibc-2.6.1-r10/temp/log.do_configure.11446 NOTE: package glibc-2.6.1-r10: task do_configure: failed ERROR: TaskFailed event exception, aborting NOTE: package glibc-2.6.1: failed ERROR: Build of /home/alex/moko/openembedded/packages/glibc/glibc_2.6.1.bb do_co nfigure failed ERROR: Task 7 (/home/alex/moko/openembedded/packages/glibc/glibc_2.6.1.bb, do_co nfigure) failed NOTE: Tasks Summary: Attempted 448 tasks of which 440 didn't need to be rerun an d 1 failed. ERROR: '/home/alex/moko/openembedded/packages/glibc/glibc_2.6.1.bb' failed NOTE: build 200808041052: completed
cd source rm glibc*2.6.1* cd ../build . ../setup-env bitbake -crebuild glibc
if this doesn't help, you have to do this
cd build . ../setup-env bitbake -f -c fetch gcc-cross-initial && bitbake gcc-cross-initial && bitbake -crebuild glibc
Gettext fails to build
Gettext's build is broken unless you have emacs installed. Crazy though it seems. You will see an error like:
| WARNING: Warnings can be ignored. :-) | if test "no" != no; then \ | set x; \ | list='po-mode.el po-compat.el'; for p in $list; do \ | if test -f "$p"; then d=; else d="./"; fi; \ | set x "$@" "$d$p"; shift; \ | done; \ | shift; \ | EMACS="no" /bin/bash ../../config/elisp-comp "$@" || exit 1; \ | if test "no" != no; then \ | set x; \ | list='po-mode.el po-compat.el'; for p in $list; do \ | if test -f "$p"; then d=; else d="./"; fi; \ | set x "$@" "$d$p"; shift; \ | done; \ | shift; \ | EMACS="no" /bin/bash ../../config/elisp-comp "$@" || exit 1; \ | else : ; fi | mv: cannot move `elc-temp' to `elc-stamp': No such file or directory | make[5]: Leaving directory `/home/raster/moko/build/tmp/work/i686-linux/gettext-native-0.14.1-r5/gettext-0.14.1/gettext-tools/misc' | make[5]: *** [elc-stamp] Error 1 | make[5]: Leaving directory `/home/raster/moko/build/tmp/work/i686-linux/gettext-native-0.14.1-r5/gettext-0.14.1/gettext-tools/misc' | make[4]: *** [po-mode.elc] Error 2 | make[4]: *** Waiting for unfinished jobs.... | make[4]: Leaving directory `/home/raster/moko/build/tmp/work/i686-linux/gettext-native-0.14.1-r5/gettext-0.14.1/gettext-tools/misc' | make[3]: *** [all-recursive] Error 1 | make[3]: Leaving directory `/home/raster/moko/build/tmp/work/i686-linux/gettext-native-0.14.1-r5/gettext-0.14.1/gettext-tools' | make[2]: *** [all] Error 2 | make[2]: Leaving directory `/home/raster/moko/build/tmp/work/i686-linux/gettext-native-0.14.1-r5/gettext-0.14.1/gettext-tools' | make[1]: *** [all-recursive] Error 1 | make[1]: Leaving directory `/home/raster/moko/build/tmp/work/i686-linux/gettext-native-0.14.1-r5/gettext-0.14.1' | FATAL: oe_runmake failed
The solution is simple - install emacs (example below for debian/ubuntu) and try again:
sudo apt-get install emacs make clean-package-gettext-native-0.14.1-r5 make openmoko-devel-image
Building OpenMoko with chroot
There may be hundreds of issues which may cause that OpenMoko fails to build on your system, so it might be more straightforward to just install a standardized build environment in which the openmoko build runs in chroot, independent of your distribution.
There is now a (not fully working) script which is able to set up a 32-bit openSUSE 10.3 build environment for building OpenMoko posted on distro-devel: [1]
On gentoo and debian-like distribution, you can use debootstrap to quickly setup a base chroot.
Please note that in addition to the common /dev, /sys and /proc, /dev/shm should also be mounted with --bind option. It is at least required to build a qtopia-x11 image. (Otherwise you will get some semaphore 'function not implemented' errors at qtopia-x11 installation stage).
Fails compiling binutils-cross on Gentoo/AMD64 and openSUSE/x86_64
make setup works fine, but when running make openmoko-devel-image it fails with the following:
| make[4]: Entering directory `build/tmp/work/armv4t-angstrom-linux-gnueabi/binutils-cross-2.18-r0/binutils-2.18/build.x86_64-linux.arm-angstrom-linux-gnueabi/libiberty/testsuite' | make[4]: Nothing to be done for `install'. | make[4]: Leaving directory `build/tmp/work/armv4t-angstrom-linux-gnueabi/binutils-cross-2.18-r0/binutils-2.18/build.x86_64-linux.arm-angstrom-linux-gnueabi/libiberty/testsuite' | make[3]: Leaving directory `build/tmp/work/armv4t-angstrom-linux-gnueabi/binutils-cross-2.18-r0/binutils-2.18/build.x86_64-linux.arm-angstrom-linux-gnueabi/libiberty' | make[2]: Nothing to be done for `install-target'. | make[2]: Leaving directory `build/tmp/work/armv4t-angstrom-linux-gnueabi/binutils-cross-2.18-r0/binutils-2.18/build.x86_64-linux.arm-angstrom-linux-gnueabi' | make[1]: Leaving directory `build/tmp/work/armv4t-angstrom-linux-gnueabi/binutils-cross-2.18-r0/binutils-2.18/build.x86_64-linux.arm-angstrom-linux-gnueabi' | rmdir: build/tmp/cross//home/techiem2/Moko/build/tmp/cross/lib/gcc-lib: No such file or directory | rmdir: build/tmp/cross//home/techiem2/Moko/build/tmp/cross/lib: No such file or directory | rmdir: build/tmp/cross//home/techiem2/Moko/build/tmp/cross: No such file or directory | mv: cannot stat `build/tmp/cross/lib/libiberty.a': No such file or directory NOTE: Task failed: build/tmp/work/armv4t-angstrom-linux-gnueabi/binutils-cross-2.18-r0/temp/log.do_stage.9730 NOTE: package binutils-cross-2.18-r0: task do_populate_staging: failed ERROR: TaskFailed event exception, aborting NOTE: package binutils-cross-2.18: failed ERROR: Build of openembedded/packages/binutils/binutils-cross_2.18.bb do_populate_staging failed ERROR: Task 1641 (openembedded/packages/binutils/binutils-cross_2.18.bb, do_populate_staging) failed NOTE: Tasks Summary: Attempted 107 tasks of which 107 didn't need to be rerun and 1 failed. ERROR: 'openembedded/packages/binutils/binutils-cross_2.18.bb' failed make: *** [openmoko-devel-image] Error 1
The final reason why the build cannot continue is: mv: cannot stat `/home/techiem2/Moko/build/tmp/cross/lib/libiberty.a': No such file or directory
The lib64 issue
Likely, Gentoo/AMD64 uses lib64 instead of lib as the library directory for x86_64 libraries. It's l likey that many (or all?) AMD64 distributions do for their 64-bit binaries. On openSUSE-x86_64, the same happens. Debian/x86-64 seems to either not use lib64 or is somehow supported by the openmoko distribution.
On multilib/lib64 platforms like Gentoo/x86_64 and openSUSE-x86_64, the openmoko build runs into a final problem at the end of build: It tries to use fakeroot which uses LD_PRELOAD to fake a different root directory and in the final stages, after hours of compiling, fakeroot execution causes warning messages because on multilib/lib64 systems as they have two versions of many libraries, the 64-bit libraries are in /lib64, /usr/lib64 and oder lib64 paths, while the 32-bit libraries are in /lib, /usr/lib and other lib paths. Some tool on these lib64 distributions are adapted to install 64-bit libraries to lib64, but this seems to fail when cross-compiling.
At least on openSUSE-10.3 the missing libiberty.a was installed to build/tmp/cross/lib64/libiberty.a, which looks wrong, and it is if this libiberty.a file contains 32-bit arm objects. If it contains 64-bit x86_64 objects, it's fine, but openembedded/openmoko is not expecting it in a lib64 directory. I am not sure what is the case.
The lib64 fakeroot issue requires to change the openembedded build scripts, which is doable. But it's not very easy to find the correct script and patch it correctly. If you feel adventourus, go ahead and try to build openmoko on a lib64 distribution, but it's easyer to set up a complete 32-bit chroot environment and run a normal build in it.
After seeing this, I assumed that openmoko/openembedded was clearly not tested with lib64 build hosts and since that would mean that even if I'd fix that error, many others could follow, and as I was not interested to fix the lib64 bugs but rather wanted to see something running first, I decided to make openmoko/openembedded think that it was running on a normal 32-bit non-lib64 machine.
There are several ways to do that:
- You install an 32bit x86-Linux somewhere and use that for building:
- Do a native install and dual-boot the 32bit x86-linux (That's for dummies which do not know the other tricks)
- Install 32bit x86-Linux in a virtual machine (Takes powerful hardware and has some overhead too). Use VirtualBox, for example.
- you can install a 32-bit development system in to a chroot jail and compile there (also quite some setup and inconvinience). See the gentoo guide
Building on SuSE Linux 10.3-AMD64 with -m32 (not finished)
Install the following packages for the 32-bit C/C++ compiler target option -m32 to work and to compile what is needed
gcc42-32bit gcc42libgcc42-32bit glibc-devel-32bit libstdc++-devel-32bit ncurses-devel-32bit zlib-devel-32bit (maybe also gtk2-devel-32bit)
The openSUSE 10.3-AMD64 has no libopenssl-devel-32bit, but you can install the 32-bit rpm from the i586 10.3 rpm tree:
You should also make sure that gdbm-devel is not installed. The multilib support in ld has an issue which surfaces when it is called from perl's Configure script to complile a test program with -Lgdbm. If gdbm-devel is installed, it finds /usr/lib64/libgdbm.so, but since it's not compatible with 32-bit, it skips it, but also does not search the specified -Lpath where the OpenEmbedded-built libgdbm.so is already installed. To work around this, uninstall /usr/lib64/libgdbm.so with: rpm -e gdbm-devel
Note these need to be the 32-bit cpp33 and gcc33 rpms as the 64-bit gcc33 rpms for openSUSE do not support the 32-bit target.
To make the OpenMoko build think that its running on 32-bit i686, use linux32 (changes uname -m to i686 in the new shell):
linux32 bash
And set up gcc scripts which force the use of gcc-3.3 (it can only generate 32-bit assembly) for all compilation:
mkdir bin;cd bin echo '/usr/bin/${0##*/}-3.3 -m32 "$@"' >gcc echo '/usr/bin/${0##*/} -m elf_i386 "$@"' >ld echo '/usr/bin/${0##*/} --32 "$@"' >gas sed -i '1i#!/bin/sh' gcc gas ld chmod 755 gcc gas ld ln -s gcc cc ln -s gcc c++ ln -s gcc g++ ln -s gas as echo PATH=\""$PWD":\$PATH\" >.setup-gcc-m32 cd -
Then set the path and test it:
source bin/.setup-gcc-m32 type gcc
More package requirements
On my system (Kubuntu 6.10) build failed with message "ERROR: QEMU requires SDL or Cocoa for graphical output" because package libsdl-image1.2-dev was missing. Use apt-get install libsdl-image1.2-dev to install. Additionally I had to install packages cvs and diffstat. I was also asked to install Psyco JIT Compiler (package python-psyco) to increase performance. Nevertheless make flash-qemu-local took some hours, but now I finally can get an impression of the phone that I am looking for! -- Nichtich 00:26, 20 September 2007 (CEST)
pango-directfb failed to build due to missing Glib 2.14.x
The latest(as of Sept. 25, 2007) build started to fail with the following error:
| checking for GLIB... no | configure: error: | *** Glib 2.14.0 or better is required. The latest version of | *** Glib is always available from ftp://ftp.gtk.org/. | FATAL: oe_runconf failed NOTE: Task failed: /media/sdc1/moko/build/tmp/work/armv4t-angstrom-linux-gnueabi/\ pango-directfb-1.18.1-r0/temp/log.do_configure.19927 NOTE: package pango-directfb-1.18.1-r0: task do_configure: failed ERROR: TaskFailed event exception, aborting NOTE: package pango-directfb-1.18.1: failed ERROR: Build of /media/sdc1/moko/openembedded/packages/pango/\ pango-directfb_1.18.1.bb do_configure failed
The Glib included in the build tree seems to be only 2.12.12, so looks like something is broken in term of dependency.
This had happened on both of Fedora 7 and Debian Etch. I am running the latest MokoMakefile with OM-2007.2. The funny thing is that the build had worked only couple nights ago. Any idea? I will update anything I find here and also on my blog(see my user profile). ttz Wed Sep 26 12:17:33 CDT 2007
pango-directfb had been removed from OE for now due to the report of it breaking builds like OpenMoko.
ttz Thu Oct 4 10:20:12 CDT 2007
uicmoc4 failes to compile
This is solved by installing libz-dev
Or, look at Bug #747
svn: REPORT request failed on '/repos/tasks/!svn/vcc/default'
osiris$ make update ... Fetching external item into 'trunk/src/target/OM-2007.2/applications/openmoko-today2/libkoto' svn: REPORT request failed on '/repos/tasks/!svn/vcc/default' svn: REPORT of '/repos/tasks/!svn/vcc/default': 200 OK (http://svn.o-hand.com) make: *** [update-openmoko] Error 1
osiris$ cd openmoko/trunk/src/target/OM-2007.2/applications/openmoko-today2//libkoto/ osiris$ svn up -r HEAD svn: REPORT request failed on '/repos/tasks/!svn/vcc/default' svn: REPORT of '/repos/tasks/!svn/vcc/default': 200 OK (http://svn.o-hand.com)
Anyone know about this one? --Blackh 00:11, 12 October 2007 (CEST)
bootparam_prot.h fails to install in glibc-intermediate-2.5 package (Debian sid)
| install: cannot stat `/home/blackh/src/openmoko/moko/build/tmp/work/armv4t-angstrom-linux-gnueabi/ glibc-intermediate-2.5-r7/glibc-2.5/sunrpc/rpcsvc/bootparam_prot.h' No such file or directory NOTE: Task failed: /home/blackh/src/openmoko/moko/build/tmp/work/armv4t-angstrom-linux-gnueabi/ glibc-intermediate-2.5-r7/temp/log.do_stage.3940
For some reason, on Debian, the rpcgen command needs "-Y /usr/bin" added to the end of it or it won't work ("cannot find any C preprocessor (cpp)"). This can be fixed by hand...
cd /home/blackh/src/openmoko/moko/build/tmp/work/armv4t-angstrom-linux-gnueabi/ glibc-intermediate-2.5-r7/glibc-2.5/sunrpc/rpcsvc for f in *.x ; do rpcgen -h $f -o ${f%%.x}.h -Y /usr/bin ; done
This command will generate the right files and you can resume the build with
make openmoko-devel-image
Here is a better fix - put this script, calling it rpcgen, somewhere in your PATH before /usr/bin:
- !/bin/sh
exec /usr/bin/rpcgen -Y /usr/bin "$@"
--Blackh 05:17, 12 October 2007 (CEST)
Cannot find SVN openmoko-terminal2
I'm having an issue when building MokoMakeFile where it is unable to find http://svn.openmoko.org/trunk/src/target/OM-2007.2/applications/openmoko-terminal2. Any ideas on how to fix this?
problem with make openmoko-devel-image
when i try to do my first make openmoko-devel-image I obtain this error:
NOTE: Running task 844 of 5445 (ID: 671, /home/xraver/moko/openembedded/packages/linux/linux-openmoko_2.6.24+git.bb, do_fetch) NOTE: package linux-openmoko-2.6.24+git20080422: started NOTE: package linux-openmoko-1_2.6.24+git20080422-r0: task do_fetch: started NOTE: fetch http://downloads.openmoko.org/sources/git_git.openmoko.org.git.kernel.git_4194.tar.gz --08:47:41-- http://downloads.openmoko.org/sources/git_git.openmoko.org.git.kernel.git_4194.tar.gz => `/home/xraver/moko/sources/git_git.openmoko.org.git.kernel.git_4194.tar.gz' Risoluzione di downloads.openmoko.org in corso... 126.96.36.199 Connessione a downloads.openmoko.org|188.8.131.52:80... connesso. HTTP richiesta inviata, aspetto la risposta... 404 Not Found 08:47:41 ERRORE 404: Not Found.
In this location http://downloads.openmoko.org/sources/ the file git_git.openmoko.org.git.kernel.git_4194.tar.gz does not exist. Any solutions?
they have problems with server, try later. that helped me ...
I have the same error as bubbas... any ideas?
Wishlist: Make qemu optional
I've just set up MokoMakefile, and after make setup I tried to get a package with make build-package-openmoko-messages2, but it's spending a lot of time and disk space on building native libraries and qemu – something that I have not asked for. It would be nice if I could build packages for my phone without having to build unneccessary stuff.
Thanks, Joachim
SVN Certificate issues for Gentoo users
Note for Gentoo users: I think Portage creates a ~/.subversion directory as root if you've ever compiled a svn ebuild via "sudo emerge". If this happens, certificates won't be saved, so you have to take back ownership of the directory:
chown -R $USER ~/.subversion
Before running a svn co from the openmoko svn server to accept the certificate, otherwise the authentication information will not be saved. kelvie 06:05, 18 July 2008 (UTC)
glibc, task do_package_write_ipk: "Package name contains illegal characters"
Package glibc-2.6.1-r11: task do_package_write_ipk may return an error while dealing with locale-base-* packages: Error: Package name contains illegal characters, (other than [a-z0-9.+-]) for no obvious reason. I've found that setting LANG=C (instead of nb_NO.utf8) seems to fix this problem: LANG=C make openmoko-devel-image or export LANG=C make openmoko-devel-image --StianEllingsen 21:44, 28 August 2008 (UTC)
Trouble Fetching illume source to build?
See here: http://n2.nabble.com/Openmoko-Bug--2169%3A-mokomakefile-org.openmoko.asu.stable%3A-illume_svn.bb-do_fetch-failed-td1638459ef1958.html#a1674848 --Urzumph 23:24, 27 December 2008 (UTC)


text:
WASHINGTON — Two years from today, Iowa — dark, brooding, enigmatic Iowa — will be enjoying its quadrennial moment as the epicenter of the universe. And in 10 months, voters will vent their spleens — if they still are as splenetic as they now claim to be — in congressional elections. Some numbers define the political landscape.
In an October poll, 60 percent favored voting out of office every congressional incumbent. The poll was taken just 11 months after voters re-elected 90 percent of House and 91 percent of Senate incumbents. Democrats are more likely to lose control of the Senate than gain control of the House. Ninety-three percent of Republican House members represent districts Mitt Romney carried, 96 percent of Democratic members represent districts Barack Obama carried. Since the mid-19th-century emergence of the current two-party competition, no party holding the presidency has ever won control of the House in any midterm election.
Larry Sabato and Kyle Kondik of the University of Virginia Center for Politics note that since the Civil War, the average turnout in presidential elections has been 63 percent and in midterms 48 percent. The decline comes mostly from the party holding the presidency, and analyst Charlie Cook says three crucial components of Obama's coalition — unmarried women, minorities (more than 40 percent of Obama's 2012 vote) and young people — are especially prone to skipping midterms. In the seven midterms since 1984, voters under 30 averaged 13 percent of the midterm vote, down from 19 percent during presidential years.
Furthermore, for House elections much of the Democratic vote is inefficiently concentrated in and around large cities. Obama won 80 percent or more in 27 districts; Romney did so in only one. That is why in 2012, Democratic House candidates got about 1.4 million more votes than Republican candidates, but did not win control of the House.
Today the 30 Republican governors — four short of the all-time GOP high of 34 in the 1920s — represent 315 electoral votes. Republicans have a 52 percent majority of state legislative seats. After the 2012 elections, Republicans controlled the governorships and legislatures in 25 states with 53 percent of the nation's population; Democrats had unified control of 13 states with 30 percent of the population.
Since the emergence of the Republican Party, only two Democratic presidents, Franklin Roosevelt and John Kennedy, have been followed by Democrats, and both FDR and JFK died in office, so their successors ran as incumbents. But Republicans have not decisively won a presidential election since 1988. Since then, no Republican nominee has won more than 50.8 percent of the vote. In the six elections 1992-2012, Republicans averaged 211 electoral votes, Democrats 327. Republicans lost the popular vote in five of these elections, and in the sixth, 2004, George W. Bush's margin was the smallest ever for a re-election.
In 2012, Obama became the first president since Ronald Reagan to win two popular-vote majorities, but Obama got 3.6 million fewer votes than in 2008, a 5 percent decline. (The last re-elected president, Bush, got 11.6 million more votes in 2004 than in 2000.) Except for a small gain among those 30-39, Obama lost ground among every age cohort. And in 2012, Republicans improved the share of votes they got in 2008 from men (in 2012 Obama became the first person to win a presidential election while losing the male vote by seven points), whites, young voters and Jews. And independents: John McCain lost them 44-52 but Romney won them 50-45. And by September 2013, independents were leaning Republican by 18 points, above even the 14-point advantage Republicans had in 2010.
In three of the most intensely contested states in 2012, Florida, Virginia and Ohio, Obama's victory margins averaged 2.6 points. But even if he had lost all three he would have still won with 272 electoral votes. Analyst Jeffrey Bell calculates this:
"Of the 12 'battleground' states, Obama won 11 — eight of them by a margin of more than 5 percentage points. Remarkably, this meant that if there had been a uniform 5 point swing toward the Republicans in the national popular vote margin — that is, had Romney won the popular vote by 1.1 percentage points instead of losing it by 3.9 — Obama would still have prevailed in the Electoral College, winning 23 states and 272 electoral votes."
These numbers suggest that the great political prizes can be won by either party. There will be more numbers to contemplate by the time the 1 percent of Americans who live in Iowa are heard from.
George Will's email address is [email protected].


text:
Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Eclipse Home | Wiki Home | Development |
- 1 Build at build.eclipse.org
- 2 Installation and Configuration of Automated Build Process for Corona
- 3 Build prerequisities
- 4 Steps Required for Setting Headless Build Platform
- 5 Execution of Build Scripts
- 6 Build Phases
- 7 Build Corona Documentation Plugin
- 8 Results of successful build process
- 9 Stages of build process
- 10 Useful links concerning eclipse build process
- 11 Hints
Build at build.eclipse.org
The Corona build process is installed on build.eclipse.org in directory /shared/technology/corona/build. But, by default there is Java 1.4 available, while Corona requires 1.5. To override default java, append to ~/.bashrc :
# java 1.5 export JAVA_ROOT="/opt/ibm/java2-ppc-50" export JAVA_BINDIR="$JAVA_ROOT/bin" export JAVA_HOME="$JAVA_ROOT" export JDK_HOME="$JAVA_ROOT" export SDK_HOME="$JAVA_ROOT" export JRE_HOME="$JAVA_ROOT/jre" export PATH=$JAVA_BINDIR:$PATH
Now log out and log in again. You should be able to use build as long as you are in coronaadmin group.
Installation and Configuration of Automated Build Process for Corona
The document describes how to configure and run automated builds of Corona project. The description is intended for Linux platform.
Build prerequisities
To set up the build environment it is required to have:
- Java5 visible in PATH
- Set JAVA_HOME to point at the JDK installation
- cvs, zip and unzip visible in PATH
Steps Required for Setting Headless Build Platform
Automatic Set Up by Script
Script needs update - use Manual setup for now.
A script that sets up build environment is available under CVS at /cvsroot/technology/org.eclipse.corona/build/setupBuild.sh. The script downloads all required packages and configures build environment. Tasks performed by setupBuild.sh correspond those described in Manually Setting Up Build Platform.
To set up build platform:
- get setupBuild.sh from CVS
- change setupBuild.sh file properties to executable:
- chmod u+x setupBuild.sh
- run setupBuild.sh with parameters:
- -h build_host - folder that will be set up as Eclipse instance used to build Corona"
- [ -c cvs_connection ] - connection type (typically "ext" or "pserver")
- ext connection type excludes anonymous user, default "anonymous"
- [ -u cvs_user_name ] - user name used to connect to CVS server, "anonymous" is accepted for pserver
- connection only, default "pserver"
For a detailed discussion on firewall and security restrictions see Troubleshooting Network Configuration
Manual Setup
Manually Setting Up Build Platform
For headless build the infrastructure provided by the PDE and the RelEng (Release Engineering) plugins is needed.
- Import from CVS /cvsroot/technology/org.eclipse.corona/build/
- Let the directory, in which the build is run, be "build"
- chmod +x build/*.sh
- Import from CVS standalone package org.eclipse.releng.basebuilder (the latest version) org.eclipse.releng.basebuilder should be installed in "build/../org.eclipse.releng.basebuilder".
- Download and install:
- Eclipse Platform
- ECF 1.0 - note ECF has permissions only for owner; you can correct it by 'chmod -R +rX eclipse'
- Equinox Bundles: org.eclipse.equinox.log, org.eclipse.equinox.event, org.eclipse.equinox.http
- Edit build/build.properties and modify:
- baseLocation - the directory in which Eclipse platform is installed
- base - the directory baseLocation/..
- If you want to automatically publish build results:
- Enable ftp client in org.apache.ant plugin of org.eclipse.releng.basebuilder:
- copy jar file commons-net-1.4.1.jar to plugins/org.apache.ant.XXX/lib
- modify MANIFEST.MF of org.apache.ant: add commons-net-1.4.1.jar to Bundle-ClassPath
- Configure property files of the build as described in section Adjusting Build Configuration To Your Machine earlier on this page.
- Enable ftp client in org.apache.ant plugin of org.eclipse.releng.basebuilder:
Manually Setting Up Configuration for Automated Tests
To enable automated tests during build:
- Supply the following zip/tar build/../download3.3 - those are versions of projects to test with. You must rename files manually.
- ecf-sdk-latest.zip
- eclipse-equinox-latest.zip
- eclipse-test-framework-latest.zip
- eclipse-sdk-latest-linux-gtk.tar.gz
- emf-sdo-xsd-sdk-latest.zip
Adjusting Build Configuration To Your Machine
Despite automated configuration of most issues, it is necessary to edit property files to adjust the build to machine specific settings. The following configuration changes should be made:
- Edit build.properties
- myFetchTag - leave HEAD if you want to build current development version or change to CVS tag/branch you want to build.
- eclipseCvsAccess - if you want to change access to CVS repository in maps, set what should be placed instead of ":pserver:email@example.com:". If build.eclipse.org the property is empty, which allows direct local access to CVS, without networking. Not set will use default.
- Edit and change build/build.properties file (only if you want to automatically publish build):
- ftpServer - IP of ftp server to copy build results
- ftpUser, ftpPassword, remoteDirectory - connection parameters on the remote server
- Edit and change updater.corona.properties file for RSS generation
- branch - the number of branch that is build
- buildAlias - branch number and name
Configuring Download Side
Results of each build should be propagated to an http server under DocumentRoot/corona/drops/buildId subdirectory. The folder DocumentRoot/corona must contain the files: build_typese.html, dlconfig.txt and index.php. The files are available in plugin org.eclipse.releng.basebuilder under subfolder builderTemplate\publishingFiles\dropSiteRootFiles\
Troubleshooting Network Configuration
Network access problems.
The setupBuild script uses two types of transport to fetch required resources: cvs and http. Depending on security settings enabled by your system administrator, one or both of there connections can be restricted. Typical solutions are:
- for www access: define http_proxy system variable
- for cvs access: check which access method is available. cvs can connect to a server using either ext (i.e. ssh protocol) or pserver. pserver access can be used if and only if the user is anonymous. ssh access requires a valid user and a password.
Execution of Build Scripts
Now the build is configured on build.eclipse.org. To run the build:
- log in to the machine
- cd to /shared/technology/corona/build folder
- if you want to build on a specified tag, update the myFetchTag property to the desired tag / branch in the build.properties; for trunk, set HEAD
- execute the main build script, the script is:
- cleanBuild.sh X - X denotes the type of build, that is X = M, I, N, S, runs the build, tests, generates html data and published build results
- for example, to execute a maintenace build, call ./cleanBuild.sh M
- buildFeed.sh - generates and publishes RSS Feed
Operations Done During Build Phases
Execution of buildCorona script comprises:
- cleaning previous build output
- fetching build scripts and properties required by the build process such as:
- run.bat/run.sh - scripts starting an Eclipse instance as AntRunner
- buildCorona.xml - build script file controling the build sequence
- customTargets.xml - build script file enabling customization of the build process, defines the map files to be fetched and the features to be built
- build.properties - contains the properties needed for fetching and building the sources
- executing run.bat/run.sh script
Build Phases
Build Plug-ins (buildAll task)
buildAll task is responsible for building Corona's plug-ins and creating Corona's features.
The most important tasks from this build steps will be described below.
- getMapFiles task (customTarget.xml).
This task is responsible for retrieving corona's map files into local build directory. Map files describe the location of corona's plug-in's and features. Location of map files is specified in build.properties file in following section:
#skipMaps=true mapsRepo=:pserver:email@example.com:/cvsroot/technology mapsRoot=org.eclipse.corona/maps mapsCheckoutTag=HEAD
- allElementsDelegator task(allElements.xml).
- This task consists following subTasks:
- allElements.org.eclipse.corona.client
- Responsible for retrieving and building org.eclipse.corona.client feature.
- allElements.org.eclipse.corona.server
- Responsible for retrieving and building org.eclipse.corona.server feature.
- allElements.org.eclipse.corona.doc-feature
- Responsible for retrieving and creating Corona's documentation feature.
- allElements.org.eclipse.corona.test.client
- Responsible for retrieving and creating Corona's client test feature.
- allElements.org.eclipse.corona.test.server
- Responsible for retrieving and creating Corona's server test feature.
- If you'd like to add new feature please have in mind following things
- Create/update proper map file located in org.eclipse.corona/maps
- firstname.lastname@example.com.<feature name>={fetchTag},:pserver:email@example.com:/cvsroot/technology,,org.eclipse.corona/<specify feature location>
- email@example.com.<plugin name>={fetchTag},:pserver:email@example.com:/cvsroot/technology,,org.eclipse.corona/<specify plugin location>
- email@example.com.<plugin name>={fetchTag},:pserver:email@example.com:/cvsroot/technology,,org.eclipse.corona/<specify plugin location>
- Add new section within allElements.xml file:
- in target allElementsDelegator
- <antcall target="allElements.org.eclipse.corona.<feature name>"/>
- create new target allElements.org.eclipse.corona.<feature name>
- <target name="allElements.org.eclipse.corona.<feature name>">
- <ant antfile="${genericTargets}" target="${target}" >
- <property name="type" value="feature" />
- <property name="id" value="org.eclipse.corona.<feature name>" />
- </ant>
- </target>
- create new target assemble.org.eclipse.corona.<feature name>
- <target name="assemble.org.eclipse.corona.client">
- <ant antfile="${assembleScriptName}" dir="${buildDirectory}"/>
- </target>
- in target allElementsDelegator
- allElements.org.eclipse.corona.client
- This task consists following subTasks:
Test Plug-ins (test task)
Publish Plug-ins (publish task)
Important tasks/files for publishing corona to the web site:
index.html generation
- <build directory>/testManifest.xml
- The file contain two types of top level elements:
- <zipType>
- Example
- <zipType name="zipTypeName">
- <platform id="ID" name="applicable platforms" fileName='file.zip'></platform>
- </zipType>
- zipType is a category of binary distributable element.
- Zip type name should be an unique identifier. It will be used in index.html.template file as a placeholder where platform information will be put.
- platform is a description of a platform-specific or non-platform specific binary distributable.
- id - unique identifier for the platform relevant to the zip file referenced in fileName attribute. Used to map compile logs and test logs listed in the manifest to a specific platform of a zipType.
- name - text that should appear on download page to describe where the binary can be installed, ie. "ALL" or "Windows 98/ME/2000/XP".
- fileName - html source inserted on download index page to produce link to the distributable.
- <logFile>
- Example
- <logFile name="pluginname/myjar.bin.log">
- <effectedFile id="ID"></effectedFile>
- </logFile>
- logFile - maps compile logs and JUnit test results to a given download.
- effectedFile - references the value of the id attribute for a platform element. Used to mark a <platform> with a status depending on the log content.
- <build directory>/templateFiles/index.html.template
- The template for creating index.html page, this file should contain placeHolders for rows of links to platform-specific and/or platform-independant runtimes for a given download type. Place holders are defined in testManifext.xml file as a zipType name attribute and should be also defined in buildAll.xml file, in publish task as a dropTokenList property.
- <property name="dropTokenList" value="%sdk%,%runtime%,%examples%,%tests%" />
- <build directory>/templateFiles/index.php.template
- <build directory>/templateFiles/testResults.php.template
Push Plug-ins (push task)
Build Corona Documentation Plugin
Corona's build process is able to build corona's documentation feature, following prerequisites are required:
- Linux machine.
- Installed ANT build tool.
- JAVA_HOME environment variable pointing to Java home directory e.g. 'export JAVA_HOME=/etc/jdk1.5.0_09'.
- ANT_HOME environment variable pointing to ANT home directory e.g. 'export ANT_HOME=/etc/apache-ant-1.6.5'.
- javaDoc property set in build.properties file, as follows
# Default for java doc generation. javaDoc=true
See in HINTS section how to generate JavaDoc without a documentation plugin
Results of successful build process
Stages of build process
- preBuild - fetching and concatenating map files (in corona.map dynamic setting of cvs tag name is made on the basis of fetchTag property value defined inside build.properties)
- fetch - retrieving project resources on the basis of the map files definition
- generate - generating build scripts for fetched resources
- process - compiling sources, coping results to build output directory or creating jar files containing the build output
- assemble - creating zip archive containg all build results
Useful links concerning eclipse build process
JavaDoc generation
Corona's JavaDoc always will be generated and integrated within documentation plugin. There is a possibility to generate javadoc without documentation plugin. Following prerequisites has to be set.
- Installed ANT.
- JAVA_HOME environment variable pointing to Java home directory.
- ANT_HOME envitonment variable pointing to ANT home directory.
- Documentation plugin should be on the same level as other corona's plugins
To start generation run script antJavadoc.sh located in org.eclipse.corona.doc\build.
- Installed cygwin.
- JAVA_HOME environment variable pointing to Java home directory.
- ANT_HOME envitonment variable pointing to ANT home directory.
- Documentation plugin should be on the same level as other corona's plugins
To start generation run under cygwin script antJavadoc.sh located in org.eclipse.corona.doc\build.


text:
DAWSONVILLE, Ga. (AP) — Moonshine distillers are making their first batches of legal liquor in this tiny Georgia town's city hall, not far from the mountains and the maroon, orange and gold canopy of trees that once hid bootleggers from the law.
A handful of moonshine distilleries are scattered around the South, but observers say this is the first they've ever seen right in a city hall. The distilleries come amid an increased interest in the U.S. for locally made specialty spirits and beer brewed in homes and micro-breweries.
The Dawsonville moonshine makers and city officials say the operation helps preserve a way of life. It also carries on traditions of an era when moonshine meant extra income for farmers, medicine for their children and helped fuel the beginnings of NASCAR racing.
"Dawson County was, sure enough, the moonshine capital of the world at one time," distiller Dwight Bearden said, as he checked on the still where the third batch of Dawsonville Moonshine was being prepared. "It was just a way of life back then."
The clanking of the still and the smell of corn and alcohol fill the room several yards and a few interior walls away from the offices of the city clerk, the mayor and other officials running the town about 60 miles north of Atlanta. The city leases the space to the distillery.
Outside city hall are old, abandoned cars from the days when Ford Coupes and other models from the 1930s and '40s hauled moonshine down Georgia Highway 9. The windy mountain highway became known as Thunder Road, because it was filled with the screaming sounds of car engines as bootleggers hauled their moonshine to Atlanta.
The young drivers were sometimes pursued by "revenue men" from the federal government, and the chases sometimes led to overturned cars and deadly wrecks. Townspeople are proud of how young Dawsonville men raced their cars at places like Lakewood Speedway in Atlanta after moonshine deliveries, which helped stock-car racing gain a following in its early days.
Today, cars on Georgia 9 slow for school zones on their way through Silver City and Coal Mountain — two of the smallest communities from Dawsonville to Atlanta — and the suburbs of Cumming, Alpharetta and Roswell farther south.
Inside the distillery are plenty of reminders of the days when moonshine was made in the surrounding foothills.
Entrepreneur Cheryl "Happy" Wood points with pride to a portrait of her grandfather, Simmie Free, hanging on one wall.
"Mama said, 'When you get this going, I want you to hang this up," Wood said.
Free learned how to make moonshine from his father, who learned it from his father generations ago, she said.
"We grew up around it, and it was our medicine," Wood said. Cough medicine was among its medicinal uses, she said.
Bearden, 56, recalls how extra income from his family's moonshining helped feed him as a child, and often meant a better Christmas if sales were good.
There are a handful of other moonshine distilleries in Southern states such as North Carolina, but officials from state and national groups say they aren't aware of any operating in a city hall.
"That's a new one for me," said Gregory Minchak, a spokesman for the National League of Cities.
J. Katie McConnell, senior associate for economic development at the League of Cities, has been studying the craft beer industry in recent months, and how small breweries and distilleries have sprung up and expanded in many communities. In Washington, D.C., for instance, the city's first gin distillery in more than a century opened this year, she said.
Wood has been planning the distillery for about five years. As she searched for a site, she and city officials began to realize that city hall would be an ideal spot, Dawsonville Mayor W. James Grogan said. The idea was that the distillery would tie into the city's history since it would be right next-door to the Georgia Racing Hall of Fame Museum, Grogan said.
The distillery has reached several key milestones this year.
Last week, the distillery was delivering the second batch of moonshine it's made to its distributor, which has orders from liquor stores and other businesses around the state. Georgia law prohibits the distillery from selling its liquor at the site, but allows a distributor to ship it to stores with a liquor license, where it can be sold legally.
Wood recently got approval from state officials to offer small samples for tourists to taste.
State Rep. Rusty Kidd of Milledgeville, who introduced that bill during the most recent session, said Thursday he believes there will be more legislation during the upcoming session that would allow the Dawsonville distillery and others in the state to sell a single bottle of moonshine to tourists who want to take one home.
The samples will be offered on a counter made from wood cut by one of the distillery's employees, Bob Suchke of Dahlonega. Tin covering the front of the tasting counter came from an old barn, Wood said.
Locally made and locally grown products are a key aspect of the business, she said. A batch of apples fermenting last week came from the north Georgia town of Ellijay, about 30 miles away, she said.
The local movement has been a successful one in north Georgia, where several vineyards dot the mountain landscape and offer tastings of wines made with locally grown grapes. In Blue Ridge, at least one apple orchard brews and bottles its own apple and peach ciders.
Corn used by the distillery is also grown locally, and the distillery sticks to authentic recipes and doesn't use any sugar, Wood said.
"This ain't sugar liquor," she said, "this is the real deal."